Ta strona została przetłumaczona maszynowo. Przeczytaj oryginał angielski. English

Biblioteka IBSurgeon

Typowe błędy InterBase/Firebird spowodowane uszkodzeniami oraz ich szanse na odzyskanie danych

Alexey Kovyazin, 31-03-2014

Poniżej znajduje się opis typowych błędów i problemów w bazach danych InterBase/Firebird oraz szanse na ich odzyskanie.

Aby uzyskać dokładną cenę i czas odzyskiwania, skontaktuj się z nami przez e-mail.

Aby uzyskać orientacyjne ceny, zobacz opis usługi „Firebird and InterBase Recovery” . Nie ma 100% gwarancji, że opisane błędy dokładnie odpowiadają opisanym przyczynom.

Internal gds software consistency check (cannot find tip page (165))

Opis błędu

Baza danych nie może zostać otwarta przy użyciu silnika Firebird lub InterBase, a pojawia się następujący komunikat: Internal gds software consistency check (cannot find tip page (165))

Nieprawidłowe zamknięcie systemu lub fizyczne uszkodzenie pliku bazy danych. Strona inwentaryzacji transakcji (TIP) została utracona. Obszar uszkodzenia może obejmować od kilku stron do całej bazy danych, dlatego konieczne jest dodatkowe dochodzenie.

Przyczyna (dlaczego to się stało?) Najbardziej prawdopodobne przyczyny to nieprawidłowe zamknięcie serwera (przy użyciu przycisku Reset), niewłaściwe podejście do tworzenia kopii zapasowych lub narzędzia do tworzenia kopii zapasowych. W systemie Windows XP takie uszkodzenie może być spowodowane funkcją „Przywracanie systemu” dla plików „gdb”.

Proces odzyskiwania

Najpierw baza danych powinna zostać przeskanowana za pomocą FirstAID Diagnostician. Jeśli FirstAID nie ostrzega o poważnym uszkodzeniu, uszkodzenie można naprawić za pomocą pełnej wersji FirstAID.

W przypadku poważnego uszkodzenia konieczne jest niestandardowe odzyskiwanie.

Szanse na naprawę uszkodzenia

99%

Database file appears corrupt. Wrong page type. Page NNN is of wrong type (expected X, found Y)

Opis błędu

Komunikat o błędzie pojawił się w standardowym wyjściu lub w firebird.log lub interbase.log:

Database file appears corrupt. Wrong page type. Page NNN is of wrong type (expected X, found Y)

Z powodu fizycznego uszkodzenia lub innej przyczyny sekwencja stron pliku bazy danych została zmieniona lub na stronach wskaźników lub stronach głównych indeksów pojawiły się nieprawidłowe wartości itp.

Przyczyna

Najbardziej prawdopodobne przyczyny to nieprawidłowe zamknięcie serwera (przy użyciu przycisku Reset), niewłaściwa procedura tworzenia kopii zapasowych lub niewłaściwe narzędzia/podejście do tworzenia kopii zapasowych.

Proces odzyskiwania

Najpierw baza danych powinna zostać przeskanowana za pomocą FirstAID Diagnostician. Jeśli FirstAID nie ostrzega o poważnym uszkodzeniu, uszkodzenie można naprawić za pomocą pełnej wersji FirstAID.

W przeciwnym razie konieczny jest niestandardowy proces odzyskiwania.

Szanse na naprawę uszkodzenia

95%.

Unknown database I/O error for file “*.gdb”. Error while trying to read from file

Opis błędu

Baza danych nie może zostać otwarta, a pojawia się następujący komunikat o błędzie: Unknown database I/O error for file “*.gdb”. Error while trying to read from the file.

Przyczyna

Z powodu nieprawidłowego zamknięcia serwera najnowsze strony bazy danych nie zostały zapisane na dysku.

Proces odzyskiwania

Niestandardowy proces odzyskiwania. Baza danych jest sprawdzana przez gfix oraz backup/restore.

Szanse na odzyskanie

95%

Decompression overran buffer

Opis błędu

Pojawia się komunikat o błędzie: Internal gds software consistency check (decompression overran buffer (179))

Przyczyna

To poważne uszkodzenie bazy danych: systemowe tabele mogły zostać uszkodzone. Czasami ten błąd występuje po przeniesieniu bazy danych na nowy serwer/komputer. Konieczne jest dochodzenie.

Proces odzyskiwania

Analiza struktury bazy danych, generowanie nowych stron, konieczne jest kilka iteracji.

Szanse na odzyskanie

95%

Wrong record length

Opis błędu

Pojawia się komunikat o błędzie: Internal gds software consistency check. Wrong record length

Przyczyna

Najczęściej błąd „Wrong record length” jest spowodowany uszkodzoną pamięcią RAM. Zdecydowanie zalecamy sprawdzenie pamięci ( RAM) na serwerze.

Proces odzyskiwania

Zlokalizuj i usuń nieprawidłowe rekordy za pomocą narzędzi niskiego poziomu IBSurgeon. Konieczne jest kilka iteracji.

Szanse na odzyskanie

97%

Database file appears corrupt. Bad checksum

Opis błędu

Database file appears corrupt. Bad checksum. Checksum error on database page XX.

Przyczyna

Uszkodzona pamięć RAM. Zdecydowanie zalecamy sprawdzenie pamięci ( RAM) na serwerze.

Proces odzyskiwania

Niestandardowy proces odzyskiwania. Konieczne jest kilka iteracji.

Szanse na odzyskanie

99%

Cannot find record back version

Opis błędu

Baza danych wydaje się działać, ale gbak nie może ukończyć tworzenia kopii zapasowej.

Tekst błędu:

Internal gds software consistency check (cannot find record back version (291))

gds_$receive failed. Exiting before completion due to errors. internal gds software consistency check (can’t continue after bug check).

Przyczyna

Najbardziej prawdopodobną przyczyną jest nieprawidłowe zarządzanie transakcjami. Badanie wydajności transakcji.

Proces odzyskiwania

Baza danych wymaga szczegółowej analizy, a zwykle rozwiązaniem jest znalezienie i usunięcie problematycznych obiektów bazy danych, a następnie ich ponowne utworzenie. Czasami konieczne jest przeniesienie danych do nowej bazy danych.

Szanse na odzyskanie

99%

Next transaction older than oldest active transaction

Komunikaty o błędzie

Internal gds software consistency check (next transaction older than oldest active transaction (266))

Przyczyna

Ten rzadki błąd występuje w InterBase 4.x-5.x, jest to błąd oprogramowania.

Proces odzyskiwania

Niestandardowy proces odzyskiwania

Szanse na odzyskanie

99%

Corrupted header

Opis błędu

Baza danych nie może zostać otwarta, a Firebird/InterBase nie traktuje jej jako prawidłowej bazy danych.

Przyczyna

Fizyczne uszkodzenie, awaria dysku twardego.

Proces odzyskiwania

Niestandardowy proces odzyskiwania

Szanse na odzyskanie

80%

Database file size exceeds implementation limit

Opis błędu

Występuje na serwerach InterBase 4.x-5.x oraz we wczesnych wersjach beta Firebird (0.9.x). Baza danych nie może zostać otwarta, rozmiar pliku bazy danych wynosi 4 GB.

Przyczyna

Limit implementacyjny InterBase 4.x-5.x-6.0.x oraz wczesnych wersji Firebird 0.9.x.

Proces odzyskiwania

Niestandardowy proces odzyskiwania.

Szanse na odzyskanie

Zwykle możemy uratować wszystkie dane (tj. 100%), ale czasami może to być mniej niż 70%.

Conversion error from string

Opis błędu

Tekst błędu: Conversion error from string “XXX”.

Przyczyna

Wstępna diagnoza jest niemożliwa, konieczne jest dochodzenie na miejscu.

Proces odzyskiwania

Niestandardowy proces odzyskiwania.

Szanse na odzyskanie

99%

INET/inet_error: read errno = 10054 or 10038 or 10093

Komunikaty o błędzie

Wiele wpisów w firebird.log lub interbase.log z błędami 10054, 10038, 10093 itp.

Przyczyna

Te błędy są spowodowane problemami sieciowymi - sprawdź swoje koncentratory, karty sieciowe itp. Nie jest to sam błąd Firebird/InterBase, ale może mieć wpływ na Firebird/InterBase.

Proces odzyskiwania

Oferujemy narzędzie FBScanner do rozwiązania problemu „błędów 10054” (między innymi). Zobacz szczegóły tutaj.

Szanse na odzyskanie

Nie dotyczy.

Partner index description not found (175))

Opis błędu

Tekst komunikatów o błędzie: internal gds software consistency check (partner index description not found (175))

Brak indeksu dla klucza podstawowego lub obcego.

Przyczyna

Może to być spowodowane fizycznym uszkodzeniem lub wewnętrznymi błędami serwera.

Proces odzyskiwania

Niestandardowy proces odzyskiwania.

Szanse na odzyskanie

100%

Inne błędy

Opis błędu

Poniżej znajduje się lista rzadkich błędów Firebird/InterBase, które mogą być spowodowane różnymi przyczynami. Nie wahaj się wysłać nam opisu swojego problemu - możemy Ci pomóc.

Nieprawidłowy UDF może powodować następujące błędy w interbase.log:

SCH_validate – not entered

SCH_validate – wrong thread

Uszkodzenie indeksu może powodować następujący komunikat w interbase.log:

Page 34672 is an orphan

A ten błąd może wystąpić podczas intensywnych operacji wstawiania/aktualizacji/usuwania w ramach pojedynczej transakcji:

internal gds software consistency check (Too many savepoints (287))

Trudno jest rozpoznać przyczynę bez zbadania bazy danych w przypadku następujących błędów:

internal gds software consistency check (error during savepoint backout (290))

internal gds Software consistency check (size of opt block exceeded (286))

internal gds software consistency check (invalid SEND request (167))

Prawdopodobna przyczyna

Różne przyczyny. Musimy zbadać uszkodzoną bazę danych.

Proces odzyskiwania

Niestandardowy proces odzyskiwania.

Szanse na odzyskanie

Różne