Z biegiem lat baza danych Comarch ERP Optima gromadzi zbędne dane – tymczasowe rekordy, logi operacji, porzucone dokumenty robocze i zduplikowane kartoteki. Nadmierny rozmiar bazy spowalnia pracę systemu, wydłuża czas backupu i zwiększa koszty przechowywania. Regularne czyszczenie i porządkowanie bazy przywraca optymalną wydajność. Opisujemy, jak to zrobić bezpiecznie.
Co można bezpiecznie usunąć z bazy Optimy
Bezpieczne elementy do usunięcia z bazy Comarch ERP Optima: porzucone dokumenty w buforze (faktury, zamówienia zapisane jako robocze i nigdy niezatwierdzone), logi operacji starsze niż 2 lata (tabela CDN.Log), nieaktywne kartoteki kontrahentów bez jakichkolwiek dokumentów, zduplikowane kartoteki towarów bez historii stanów magazynowych, stare sesje operatorów (tabela CDN.Sesje). Nigdy nie usuwaj dokumentów z wartościami VAT i finansowymi – są częścią ewidencji podatkowej.
Narzędzie Comarch do czyszczenia bazy
Comarch ERP Optima dostarcza wbudowane narzędzie Konserwacja bazy danych dostępne w Narzędzia → Konserwacja bazy danych. Pozwala ono na: usunięcie dokumentów buforowych (niezatwierdzonych), czyszczenie logów operacji, reorganizację indeksów bazy, aktualizację statystyk SQL. Przed uruchomieniem narzędzia konserwacyjnego wszyscy użytkownicy muszą być wylogowani z Optimy, a administrator powinien wykonać backup bazy.
Archiwizacja starych danych zamiast usuwania
Zamiast usuwać stare dane z aktywnej bazy, lepiej je zarchiwizować. Comarch ERP Optima posiada mechanizm archiwizacji roku: Narzędzia → Archiwizacja danych → Archiwizuj rok. Przenosi on dane wybranego roku obrachunkowego do osobnego pliku archiwum ZIP, odchudzając aktywną bazę. Archiwum można otworzyć w trybie podglądu w dowolnym momencie. Archiwizację roku warto wykonać po 2–3 latach od zamknięcia roku podatkowego, gdy bieżące zapytania do tych danych są rzadkie.
Zmniejszenie rozmiaru pliku dziennika transakcji (.ldf)
Plik dziennika transakcji (.ldf) może rozrastać się nieproporcjonalnie, jeżeli baza działa w trybie Full Recovery bez regularnych kopii dziennika. Zmniejszenie pliku (shrink) po zmianie trybu na Simple Recovery:
ALTER DATABASE CDN_NazwaFirmy SET RECOVERY SIMPLE;
DBCC SHRINKFILE ('CDN_NazwaFirmy_log', 100);
ALTER DATABASE CDN_NazwaFirmy SET RECOVERY FULL;
Shrink pliku .ldf jest jednorazową operacją naprawczą – po powrocie do Full Recovery konfiguruj regularne backupy dziennika, by plik nie rósł ponownie bez kontroli.
Rebuild indeksów i aktualizacja statystyk
Regularna przebudowa indeksów (co miesiąc lub kwartał, zależnie od intensywności użytkowania) i aktualizacja statystyk to podstawowe zabiegi konserwacyjne bazy SQL Optimy. W SSMS utwórz Maintenance Plan z zadaniami: Rebuild Index (lub Reorganize Index dla fragmentacji poniżej 30%), Update Statistics i Check Database Integrity (DBCC CHECKDB). Maintenance Plan zaplanuj na niedzielę w nocy (np. 02:00), gdy system jest bezczynny. Przebudowa indeksów dużej bazy może trwać kilka godzin.
Monitoring rozmiaru bazy i trendów wzrostu
Ustaw monitoring rozmiaru bazy danych Optimy i trenduj wzrost w czasie. Zapytanie SQL sprawdzające rozmiar: SELECT name, size/128.0 AS SizeMB FROM sys.master_files WHERE database_id = DB_ID('CDN_NazwaFirmy'). Jeżeli baza rośnie o więcej niż 5 GB rocznie, warto zidentyfikować, które tabele odpowiadają za największy wzrost i rozważyć archiwizację. Baza powyżej 50 GB na SQL Server Express (limit 10 GB) wymaga migracji do SQL Server Standard.