Uszkodzona baza danych programu Płatnik to jedna z poważniejszych awarii, z jakimi mierzy się nasz serwis, ponieważ w grę wchodzi bezpieczeństwo historii rozliczeń firmy. Naprawiamy takie usterki, korzystając z narzędzi diagnostycznych silnika Firebird oraz mechanizmów odtwarzania danych.
Baza danych Płatnika oparta jest na silniku Firebird, który podobnie jak inne systemy bazodanowe może ulec uszkodzeniu w wyniku nagłego zaniku zasilania, awarii dysku, błędu podczas aktualizacji programu lub niepoprawnego zamknięcia aplikacji. Objawy takiego uszkodzenia bywają różne — od komunikatów o błędzie bazy, przez zawieszanie się programu, po brakujące lub zduplikowane dokumenty.
Jak diagnozujemy uszkodzenie bazy
- Analiza komunikatów błędów zwracanych przez program przy próbie otwarcia bazy
- Sprawdzenie integralności pliku bazy danych narzędziami diagnostycznymi Firebird (gfix, gbak)
- Weryfikacja stanu dysku twardego, na którym znajduje się baza — błędy sektorów, kondycja SSD
- Sprawdzenie logów systemowych pod kątem nagłych zamknięć systemu lub awarii zasilania
Metody naprawy
W zależności od stopnia uszkodzenia stosujemy różne podejścia. Przy drobnych niespójnościach wystarcza naprawa strukturalna bazy narzędziem gfix, które potrafi skorygować błędy indeksów i powiązań bez utraty danych. Przy poważniejszych uszkodzeniach konieczne jest wykonanie eksportu i ponownego importu danych (gbak), co pozwala odtworzyć czystą strukturę bazy z zachowaniem możliwie największej ilości informacji. W najgorszym scenariuszu, gdy plik bazy jest fizycznie uszkodzony, jedynym wyjściem jest odtworzenie danych z ostatniej dostępnej kopii zapasowej.
Zapobieganie uszkodzeniom w przyszłości
Po naprawie zawsze analizujemy przyczynę źródłową awarii. Jeśli winny jest dysk twardy, rekomendujemy jego wymianę na nowy, najlepiej SSD, zanim dojdzie do kolejnego, tym razem nieodwracalnego uszkodzenia. W przypadku awarii zasilania proponujemy instalację zasilacza UPS, który chroni komputer przed nagłym wyłączeniem w trakcie zapisu danych do bazy — to jedna z najskuteczniejszych i najtańszych metod prewencji.
