Baza danych SQL Server (lub SQLite w małych instalacjach) systemu enova365 może ulec uszkodzeniu wskutek nagłej awarii serwera, błędów dysku twardego lub nieprawidłowego wyłączenia systemu. Uszkodzona baza objawia się błędami spójności, niemożnością zalogowania lub nieoczekiwanymi wyjątkami przy operacjach na danych. Świadczymy usługi naprawy uszkodzonych baz danych enova365.
Objawy uszkodzenia bazy danych
Uszkodzenie bazy danych enova365 może objawiać się: błędem „database corruption" lub „checksum mismatch" przy uruchomieniu aplikacji, komunikatami SQL Server o błędach stron danych (page error), niemożnością otwarcia konkretnych list lub dokumentów, błędami podczas uruchamiania aplikacji związanymi z odczytem danych startowych. W przypadku SQLite charakterystyczny jest błąd „database disk image is malformed".
Diagnostyka i naprawa SQL Server
Dla bazy SQL Server uruchamiamy DBCC CHECKDB z opcją NO_INFOMSGS, EXTENDED_LOGICAL_CHECKS – polecenie identyfikuje uszkodzone strony i obiekty. W zależności od zakresu uszkodzeń stosujemy: DBCC CHECKDB REPAIR_ALLOW_DATA_LOSS (tylko gdy brak kopii zapasowej), przywrócenie bazy z kopii zapasowej i zastosowanie backupów dziennika transakcji, lub selektywne odtworzenie uszkodzonych tabel z wcześniejszej kopii. Priorytetem jest minimalizacja utraty danych.
Naprawa bazy SQLite
Dla instalacji SQLite (typowych dla małych biur używających enova365 w trybie standalone) stosujemy narzędzie sqlite3 z poleceniem PRAGMA integrity_check i mechanizm dump/restore: eksportujemy dane do SQL z uszkodzonej bazy, tworzymy nową bazę i importujemy zapisane dane. Alternatywnie przywracamy z kopii zapasowej jeśli jest dostępna i aktualna. Po naprawie weryfikujemy integralność i testujemy pracę aplikacji.