ERP i bazy danych
Administracja
bazami danych MS SQL
Baza danych pod systemem magazynowym latami działa bez zgłoszeń, a jej awaria potrafi zatrzymać sprzedaż i produkcję. Zajmujemy się nią, zanim do awarii dojdzie: kopie zapasowe, indeksy, plan konserwacji i próbne odtworzenie kopii.
Cztery obszary administracji MS SQL
Administracja MS SQL obejmuje cztery obszary: indeksy, statystyki, plan konserwacji i kopie zapasowe. Zdarza się, że część z nich nie była sprawdzana od dnia wdrożenia systemu.
Indeksy fragmentują się, gdy nie ma zadania, które regularnie je przebudowuje. Nieaktualne statystyki sprawiają, że silnik wybiera złe plany wykonania i to samo zapytanie raz trwa sekundę, a raz minutę. Plan konserwacji bywa ustawiony kreatorem przy wdrożeniu i od tamtej pory nie był przeglądany.
Ryzykowne jest też ustawienie, w którym pełna kopia raz na dobę trafia na ten sam dysk, na którym stoi baza. Awaria dysku albo zaszyfrowanie danych przez ransomware niszczy wtedy jednocześnie bazę i kopię.
- Przebudowa i reorganizacja indeksów według stopnia fragmentacji
- Aktualizacja statystyk, żeby plany wykonania zapytań były trafne
- Plan konserwacji dopasowany do okien serwisowych firmy
- Kopie pełne, różnicowe i dziennika transakcji w ustalonym rytmie
- Kopia przechowywana poza serwerem produkcyjnym
- Monitoring wolnego miejsca, kolejek i długich zapytań
Skąd biorą się wolne operacje
Zgłoszenie „system zwolnił” rzadko dotyczy całego systemu. Zwykle wolne są dwie albo trzy operacje: zamknięcie miesiąca, generowanie raportu, inwentaryzacja. Reszta działa normalnie, dlatego problem bywa zgłaszany dopiero po miesiącach.
Zaczynamy od pomiaru. Sprawdzamy, które zapytania zużywają najwięcej czasu procesora i odczytów z dysku, i na tej podstawie decydujemy, co poprawić. Bywa, że jedno źle napisane zapytanie w raporcie uruchamianym raz dziennie obciąża serwer bardziej niż cała pozostała praca.
Najpierw porządkujemy indeksy i statystyki, bo nie wymaga to wymiany sprzętu ani zmian w aplikacji. O mocniejszym serwerze albo zmianach w samym systemie rozmawiamy dopiero wtedy, gdy to nie wystarczy.
Sprawdź, ile trwa najcięższa operacja po przebudowie indeksów i aktualizacji statystyk. Od tego wyniku zależy, czy wymiana sprzętu jest w ogóle potrzebna.
Próbne odtworzenie kopii
Zadanie kopii co noc kończy się sukcesem, a plik ma poprawny rozmiar. Nie dowodzi to jeszcze, że z tej kopii da się odtworzyć działający system.
Dlatego odtwarzamy kopię na osobnym środowisku i mierzymy, ile trwa powrót do pracy. Od tego czasu zależy, czy awaria zatrzyma firmę na godzinę, czy na dwa dni.
Ustalamy też z firmą, ile danych może stracić w najgorszym przypadku i jak długo produkcja może stać. Od tych odpowiedzi zależy, czy kopia raz na dobę jest dość częsta, czy trzeba dołożyć kopie dziennika transakcji, na przykład co kwadrans.
Dostępy i bezpieczeństwo
Typowe ryzyka wyglądają tak: wszyscy pracują na koncie z uprawnieniami administratora, hasło jest wspólne i nie zmieniało się od wdrożenia, a serwer bazy jest dostępny z internetu na domyślnym porcie. Razem tworzą sytuację, w której jeden otwarty załącznik może skończyć się zaszyfrowaniem danych.
Porządkujemy uprawnienia według zasady najmniejszych potrzebnych praw, zamykamy dostęp z zewnątrz albo ograniczamy go do konkretnych adresów i włączamy szyfrowanie kopii. Każdą zmianę uprawnień uzgadniamy z osobą odpowiedzialną za system, żeby nie odciąć nikomu dostępu w trakcie pracy.
Monitoring bazy
Część awarii bazy daje wcześniej sygnały: kończące się miejsce na dysku, rosnący czas stałych operacji, narastające kolejki, błędy w dzienniku zdarzeń. Widać je, jeśli ktoś je śledzi.
Ustawiamy monitoring, który zgłasza te sygnały, i ustalamy, kto dostaje powiadomienia, tak żeby alert trafiał do osoby, która może zareagować.
Dla kogo pracujemy
Najczęściej są to firmy produkcyjne i handlowe z systemem magazynowym na MS SQL: Subiekt, Insoft, WAPRO albo rozwiązanie branżowe pisane na zamówienie. Zwykle baza rosła latami, a w firmie nie było osoby, która miałaby czas się nią zająć.
Obsługujemy serwery w firmie i w chmurze. Pracujemy zdalnie, a przy awariach krytycznych także poza standardowymi godzinami, bo nocna zmiana albo sobotnia inwentaryzacja nie może czekać do poniedziałku.
Pan Jakub jest bardzo profesjonalny i znacznie ułatwił mi prowadzenie firmy.
Wersje, licencje i limity SQL Server
MS SQL występuje w kilku wariantach, a różnice między nimi wychodzą zwykle po latach. Darmowa wersja Express ogranicza rozmiar pojedynczej bazy do 10 GB (w wersjach do 2022 włącznie, od SQL Server 2025 do 50 GB) oraz ilość pamięci, z której korzysta silnik. Gdy baza zbliża się do limitu, system zaczyna działać wolniej albo przestaje zapisywać dane, często bez czytelnego komunikatu dla użytkownika.
Na starcie sprawdzamy wersję serwera, odległość od limitów i to, czy przejście na wariant płatny ma sens. Czasem lepiej odchudzić bazę i zostać przy Expressie, a czasem płatna licencja jest rozsądniejsza niż kolejne obejścia.
Osobna sprawa to wersja samego silnika. Wydania, które nie dostają już poprawek bezpieczeństwa, bywają używane do dziś. Migrację na nowszą wersję najpierw testujemy na kopii pod kątem zgodności z systemem ERP i dopiero potem wykonujemy na produkcji.
Współpraca
Jak wygląda współpraca krok po kroku
Przegląd stanu
Sprawdzamy wersje, rozmiary, indeksy, kopie i obciążenie serwera. Niczego nie zmieniamy bez uzgodnienia.
Zabezpieczenie
Najpierw kopie i uprawnienia, potem optymalizacja.
Optymalizacja
Indeksy, statystyki, plan konserwacji i poprawki najcięższych zapytań.
Opieka
Monitoring, cykliczne przeglądy i wsparcie przy awariach.
Pytania
Najczęstsze pytania
Większość nie. Przebudowę indeksów i konserwację planujemy w oknach serwisowych, zwykle nocnych. Jeśli coś wymaga przestoju, uprzedzamy wcześniej i ustalamy termin.
Może być. Express ma limit rozmiaru bazy (10 GB do wersji 2022, 50 GB od wersji 2025) i ogranicza pamięć silnika. Sprawdzamy, jak blisko tych granic jest baza i czy lepiej ją odchudzić, czy przejść na wersję płatną.
Tak, to zgłoszenie traktujemy jako najpilniejsze. Prosimy wtedy, żeby nie próbować napraw na oryginale: pierwszym krokiem jest zabezpieczenie stanu obecnego.
To zależy od tego, ile danych firma może stracić i jak długo może stać produkcja. Gdy w ciągu dnia powstaje dużo dokumentów, do kopii nocnej dokładamy kopie dziennika transakcji w ciągu dnia. Kopie trzymamy poza serwerem produkcyjnym i szyfrujemy.
Od liczby serwerów i baz, ich rozmiaru, stanu kopii i uprawnień oraz od tego, czy potrzebna jest jednorazowa naprawa, czy stała opieka z monitoringiem. Wycenę przygotowujemy bezpłatnie w 24 godziny.
Tak, jesteśmy serwisem programów InsERT i Insoft. Zobacz wsparcie systemów ERP, InsERT i Insoft.
Powiązane usługi
Co jeszcze może się przydać
Twoje miasto
Bazy danych MS SQL w Twoim mieście
Dla każdego z tych miast mamy osobną stronę z opisem lokalnego rynku i tego, jak pracujemy z firmami z tego miasta.
Sprawdźmy, w jakim stanie jest Twoja baza
Napisz, jaka jest wersja serwera, rozmiar bazy i sposób robienia kopii. Odpowiemy, czy jest się czym martwić, a wycenę prac przygotujemy bezpłatnie w 24 godziny.