Z upływem lat użytkowania WAPRO Mag baza danych SQL Server rośnie, indeksy ulegają fragmentacji, a statystyki stają się nieaktualne. Skutkuje to stopniowym spowolnieniem programu – długim ładowaniem listy dokumentów, wolnym generowaniem raportów czy opóźnieniami przy wystawianiu faktur. Optymalizacja bazy SQL Server przywraca pierwotną wydajność i poprawia komfort codziennej pracy bez konieczności zmiany sprzętu.
Diagnozowanie problemów z wydajnością
Przed optymalizacją należy zdiagnozować, co konkretnie jest przyczyną spowolnienia:
- Fragmentacja indeksów – najczęstsza przyczyna spowolnień w starszych bazach. Sprawdź fragmentację zapytaniem:
SELECT * FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, 'LIMITED') WHERE avg_fragmentation_in_percent > 10; - Nieaktualne statystyki – SQL Server planuje zapytania na podstawie statystyk. Nieaktualne statystyki prowadzą do nieoptymalnychalnych planów wykonania.
- Brakujące indeksy – zapytania mogą przeszukiwać tabele sekwencyjnie zamiast przez indeks. SQL Server może zasugerować brakujące indeksy w dynamicznych widokach zarządzania.
- Przepełnienie logu transakcji – duże operacje bez odpowiedniego zarządzania logiem mogą blokować bazę.
Odbudowa i reorganizacja indeksów
Indeksy z fragmentacją powyżej 30% warto odbudować (REBUILD), a te z fragmentacją 10–30% zreorganizować (REORGANIZE):
- W SSMS wybierz bazę WAPRO Mag → Zadania → Przebuduj indeksy.
- Alternatywnie wykonaj skrypt SQL dla wszystkich indeksów:
EXEC sp_msforeachtable 'ALTER INDEX ALL ON ? REBUILD WITH (ONLINE = OFF)'Operacja przebudowania indeksów powinna być wykonywana poza godzinami pracy (np. w nocy lub w weekendy), ponieważ chwilowo blokuje tabele.
Aktualizacja statystyk
- W SSMS: PPM na bazę → Zadania → Aktualizuj statystyki.
- Lub przez skrypt:
EXEC sp_updatestats;
Zarządzanie logiem transakcji
Jeśli plik logu transakcji (.ldf) jest bardzo duży:
- Sprawdź model odtwarzania bazy: jeśli to Full, a nie robisz kopii logu transakcji, zmień na Simple (dla środowisk bez potrzeby point-in-time recovery):
ALTER DATABASE WaproMag SET RECOVERY SIMPLE; - Wykonaj zmniejszenie pliku logu:
DBCC SHRINKFILE (WaproMag_log, 100);
Nasz serwis przeprowadza kompleksową optymalizację baz SQL Server dla WAPRO Mag, odbudowuje indeksy, aktualizuje statystyki i zarządza logami transakcji. Skontaktuj się z nami, jeśli WAPRO Mag działa wolniej niż powinien.