woj. lubelskie
Administracja MS SQL
Puławy
Administrujemy bazami Microsoft SQL Server w firmach z Puław, w których program magazynowy zapisuje dane na serwerze SQL. Pilnujemy kopii zapasowych i ich próbnego odtwarzania, dbamy o indeksy i aktualność statystyk, prowadzimy plan konserwacji, ustawiamy uprawnienia, doradzamy przy wersjach i licencjach, a po awarii prowadzimy odzyskiwanie danych. Wycena jest bezpłatna.
Odbiorcy
Bazy danych MS SQL w Puławach: produkcja, handel i rolnictwo
Program magazynowy długo nie kończy zatwierdzania dokumentu. Jedną z możliwych przyczyn jest czekanie na zasób, który zajęła inna sesja. Ile potrwa takie czekanie na blokadę, określa limit czasu: na początku każdego połączenia ma on wartość oznaczającą brak limitu, więc polecenie czeka do skutku. Limit może ustawić sesja albo program, który z niej korzysta, a po jego przekroczeniu silnik zwraca błąd.
Poniżej piszemy, jakie programy magazynowe pracują na Microsoft SQL Server, a potem o puławskich firmach, w których sezon może zwiększać obciążenie bazy.
Jaką bazę danych mają Subiekt, Insoft i WAPRO
Subiekt, Insoft i WAPRO przechowują swoje dane w Microsoft SQL Server, podobnie jak część rozwiązań branżowych pisanych na zamówienie. Najwięcej takich baz obsługujemy u producentów i w firmach handlowych.
Wybór i wdrożenie samego programu to osobny temat, opisany przy programach ERP w Puławach na naszej stronie. Tutaj zajmujemy się bazą, na której ten program pracuje.
Sezonowa sprzedaż firm rolniczych z Puław a obciążenie bazy
Sprzedaż puławskich przedsiębiorstw rolniczych i agrotechnicznych zależy od sezonu. Sezon może oznaczać dla bazy więcej dokumentów zapisywanych w krótkim czasie i szybszy przyrost danych w plikach. Obsługujemy serwery postawione w siedzibie firmy i serwery w chmurze.
Czynności
Administracja bazami danych: sześć części pracy przy SQL Server
Na co dzień administracja bazami danych oznacza powtarzalne czynności przy instancji SQL Server, od kopii i ich testów po wersje silnika i licencje. Sześć kart pokazuje części tej pracy, a cztery pierwsze, od indeksów i statystyk przez plan konserwacji po kopie zapasowe, stanowią jej główną część. Pod kartami każdą z sześciu opisujemy w osobnej podsekcji, w tej samej kolejności.
- Porządek indeksów dobrany do stopnia fragmentacji
- Odświeżanie statystyk, z których korzystają plany wykonania
- Plan konserwacji ułożony pod okna serwisowe firmy
- Harmonogram kopii pełnych, różnicowych i dziennika
- Kopia poza maszyną, na której pracuje baza
- Sygnały o kolejkach, długich zapytaniach i braku miejsca
Fragmentacja indeksów SQL Server i indeks filtrowany
Stopień fragmentacji sprawdzamy dla każdego indeksu osobno i bierzemy go pod uwagę przy wyborze między przebudową a reorganizacją. To, co potocznie nazywa się defragmentacją bazy danych MS SQL, dotyczy w praktyce indeksów.
Osobnym narzędziem jest indeks filtrowany. Obejmuje tylko wiersze spełniające prosty warunek w obrębie jednej tabeli, na przykład dokumenty jeszcze nieprzetworzone albo kolumnę wypełnioną w nielicznych wierszach. Taki indeks zajmuje mniej miejsca od indeksu na całej tabeli, ma dokładniejsze statystyki, a silnik aktualizuje go tylko przy zmianach w objętych nim wierszach.
Aktualne statystyki SQL Server a wybór planu zapytania
Statystyki aktualizujemy po to, żeby optymalizator wybierał plan wykonania na podstawie bieżącego rozkładu danych. Przebudowa indeksu odświeża przy okazji statystyki tego indeksu, a poza indeksem partycjonowanym i przebudową wznawialną silnik czyta wtedy wszystkie jego wiersze, tak jak przy aktualizacji z pełnym skanem. Reorganizacja statystyk nie zmienia, dlatego w planie konserwacji ich aktualizacja ma osobne miejsce. Według dokumentacji producenta poprawa widoczna po przebudowie w wielu przypadkach wynika właśnie z odświeżonych statystyk. Producent zaleca więc sprawdzić, czy podobny efekt da sama aktualizacja statystyk, która zużywa znacznie mniej zasobów.
Plan konserwacji bazy a przestój programu magazynowego
Plan konserwacji (maintenance plan) układamy pod okna serwisowe konkretnej firmy. Większość czynności nie zatrzymuje programu. Cięższe prace, takie jak przebudowa indeksów i konserwacja, trafiają zwykle w nocne okna, a ewentualny przestój ustalamy z Tobą przed pracami.
Rodzaj operacji ma tu znaczenie. Reorganizacja indeksu jest operacją online, więc zapytania i zmiany w tabeli trwają w tym czasie dalej. Przebudowa offline zwykle kończy się szybciej, ale przez cały czas trzyma blokady, które nie dopuszczają zapytań do tabeli. Wariant Enterprise pozwala przebudować indeks online, z krótką blokadą dopiero na końcu operacji. Każda przebudowa potrzebuje też miejsca na dwie kopie indeksu, bo stary znika po zbudowaniu nowego.
Kurczenie plików bazy i przenoszenie starych dokumentów do archiwum należą do osobnej usługi, opisanej przy odchudzaniu bazy danych w Puławach i niewchodzącej do planu konserwacji.
Kopia zapasowa bazy danych i dziennik transakcji
Rytm kopii pełnych, różnicowych i dziennika transakcji ustalamy w rozmowie z firmą o dwóch granicach: dopuszczalnej utracie danych i dopuszczalnym czasie postoju produkcji. Ustalony rytm sprawdzamy próbnym odtworzeniem kopii na osobnym środowisku, mierząc przy tym czas powrotu do pracy.
Z dziennika korzysta też sam silnik po nagłym zatrzymaniu serwera. Strony danych zmienia najpierw w pamięci, a w punkcie kontrolnym zapisuje zmienione strony i informacje dziennika na dysk. W trakcie odzyskiwania ponawia więc zmiany zapisane po ostatnim punkcie kontrolnym, a długie, niezatwierdzone transakcje wydłużają cały proces. Nowe bazy w nowszych wydaniach dostają punkty pośrednie z docelowym czasem odzyskiwania, a bazy uaktualnione albo odtworzone ze starszych wydań zostają przy trybie automatycznym, dopóki ktoś go nie zmieni.
Szerszym tematem są kopie plików i systemów całej firmy, poruszone w artykule o kopiach zapasowych w firmie i wykraczające poza samą bazę.
Uprawnienia SQL Server, dostęp z internetu i kopia poza serwerem
Porządek w uprawnieniach opieramy na zasadzie najmniejszych potrzebnych praw: konto dostaje tyle dostępu, ile wymaga jego zadanie. W każdej bazie istnieje rola public, do której należy każdy użytkownik i z której nie da się go usunąć. Użytkownik bez własnego prawa do obiektu dziedziczy uprawnienia nadane tej roli, więc prawo przyznane rolom public w bazie albo na serwerze dostają wszyscy naraz.
Połączenia z internetu do serwera bazy blokujemy albo ograniczamy. Silnik ma też funkcję uruchamiania poleceń systemu operacyjnego z poziomu bazy. W nowych instalacjach jest ona wyłączona, a uruchomiony przez nią proces działa z prawami konta usługi silnika, które często ma uprawnienia szersze od potrzebnych. Producent zaleca, żeby nowy kod z niej nie korzystał, a jeśli starszy program jej wymaga, by włączać ją tylko na czas zadania.
Dbamy o to, żeby kopia leżała poza serwerem produkcyjnym, więc awaria tego serwera jej nie niszczy. Szyfrowanie kopii wprowadzamy tam, gdzie wariant silnika je obsługuje, i chroni ono zawartość pliku przed odczytem przez osobę, która go zdobędzie. Wbudowane szyfrowanie kopii mają warianty Standard i Enterprise, a wariant Express go nie oferuje.
Monitoring SQL Server: czekanie zapytań, dysk i dziennik zdarzeń
Ustawiamy zgłoszenia o kończącym się miejscu na dysku, o wydłużającym się czasie operacji wykonywanych codziennie, o kolejkach i o błędach w dzienniku zdarzeń. Śledzimy też długie zapytania. Listę osób, które dostają powiadomienia, ustalamy razem z firmą.
Mniej oczywistą kolejką jest czekanie zapytań na pamięć. Zapytanie, które sortuje dane albo łączy je przez dopasowanie skrótu (hash), rezerwuje pamięć według szacunku liczby wierszy, a szacunek opiera się na statystykach. Jeśli pamięć zajmują inne zapytania, kolejne czeka na przydział. Zaniżony szacunek kończy się tym, że nadmiar wierszy trafia na dysk jako przestrzeń robocza i operacja trwa dłużej. Nieaktualne statystyki mogą więc dać przydział zarówno za duży, jak i za mały.
Koszt opieki
Ile kosztuje opieka nad bazą MS SQL: czynniki i wycena
Gdy baza zwalnia, zaczynamy od sprawdzenia, które zapytania zużywają najwięcej czasu procesora i odczytów z dysku. Dopiero z wynikami w ręku decydujemy o poprawkach. Kolejność wygląda tak: najpierw indeksy i statystyki, a temat mocniejszego serwera albo zmian w systemie podejmujemy wtedy, gdy te kroki nie dadzą efektu.
Dwie podsekcje poniżej dotyczą bezpłatnej wyceny i formalnej strony zlecenia, a cztery czynniki kosztu stoją w karcie zamykającej sekcję.
Wycena administracji bazą MS SQL w Puławach po krótkiej rozmowie
Bezpłatną wycenę przygotowujemy w 24 godziny. Potrzebujemy trzech informacji: wersji silnika, rozmiaru bazy i sposobu, w jaki dziś powstają kopie. Z tych trzech informacji wynika pierwsza odpowiedź: czy jest się czym martwić. Kolejny krok to krótka rozmowa; po niej przesyłamy wycenę, opis zakresu i plan terminów.
Jak wygląda zlecenie opieki nad bazą od strony formalnej
Umowę podpisujemy przy każdym projekcie. Określa zakres, termin, koszt i zasady wsparcia po wdrożeniu, a NDA podpisujemy na Twoje życzenie. Płatność przy większych wdrożeniach dzielimy na etapy: każdą odebraną część rozliczamy osobno, zgodnie z zapisami umowy.
- Liczba maszyn i baz pod opieką
- Rozmiar każdej z tych baz
- Stopień uporządkowania kopii i uprawnień
- Jedna interwencja albo opieka z monitoringiem
Decyzja o wariancie
Bezpłatny SQL Server Express a licencja płatna: co porównać
Na początek ustalamy wersję i wariant silnika, na którym pracuje Twój program, w tym to, czy jest to bezpłatny Express. Express ogranicza zarówno wielkość bazy, jak i ilość pamięci dostępnej dla silnika.
Od tego, ile miejsca i pamięci zostało do limitu, zależy nasza rada: odchudzić bazę albo zmienić wariant na płatny. Jeśli wybór padnie na odchudzenie, prace przejmuje osobna usługa optymalizacji baz danych obejmująca archiwizację starych dokumentów i zmniejszanie plików.
Trzy podsekcje tej części dotyczą tego, czego Express nie ma poza limitami, innych bezpłatnych wariantów silnika i zgodności programu z nowszą wersją.
Czego SQL Server Express nie ma poza limitem rozmiaru i pamięci
Przy pytaniu, czy SQL Server Express wystarczy, poza limitami trzeba sprawdzić listę funkcji, których ten wariant nie ma. Według zestawienia producenta Express nie ma usługi harmonogramu zadań, wbudowanego szyfrowania kopii ani poczty bazy danych, więc silnik sam nie wyśle wiadomości e-mail o błędzie. Podstawy przydatne każdemu, kto używa MS SQL w małej firmie bez stałego administratora, zebraliśmy w osobnym artykule.
Czy SQL Server jest darmowy: Express, Developer i wersja próbna
Bezpłatnych wariantów jest więcej. Wariant Developer ma pełny zestaw funkcji wariantu płatnego, ale jego licencja obejmuje tworzenie i testowanie aplikacji, bez pracy w roli serwera produkcyjnego. Wersja próbna Evaluation ma funkcje Enterprise i działa przez ograniczony czas. Express jest bezpłatnym wariantem podstawowym, z limitami wspomnianymi wyżej.
Nowsza wersja SQL Server a program ERP: test przed produkcją
Migrację silnika do nowszej wersji testujemy pod kątem zgodności z Twoim programem ERP, zanim wykonamy ją na serwerze produkcyjnym. Do testów bazę można odtworzyć z kopii w innym miejscu. Odtworzenie domyślnie zapisuje pliki w ścieżkach, w których leżały na serwerze źródłowym, więc przy innym układzie dysków wskazuje się nowe położenie każdego pliku. Druga kopia bazy na tej samej instancji wymaga dodatkowo nowych nazw plików, a dokumentacja zaleca wcześniej sprawdzić miejsce na dysku i możliwe kolizje z istniejącymi plikami.
Jakie wersje silnika obsługuje dane wydanie programu, określa jego producent. Wdrożenia samych programów InsERT w Puławach prowadzimy w ramach osobnej usługi.
Kogo wybrać
Komu powierzyć administrowanie bazą danych i o co pytać wykonawcę
W firmie z programem magazynowym są zwykle trzy role: dostawca programu, informatyk od komputerów i sieci oraz osoba odpowiedzialna za bazę. Bywa, że ostatnia z nich nie jest przypisana do żadnej osoby. Jeśli szukasz opieki nad komputerami, siecią i serwerem plików, zobacz stałą obsługę informatyczną firm w Puławach jako osobną usługę.
Dalej znajdziesz pytania, które dobrze zadać wykonawcy, zanim otrzyma dostęp do serwera, a potem opis ról serwera o najszerszych uprawnieniach.
O co zapytać firmę, która ma zajmować się Twoim serwerem SQL
- Kiedy wykonujecie prace, które mogą obciążyć program? W oknach serwisowych, najczęściej nocnych, a gdy któraś czynność wymaga zatrzymania programu, termin tej przerwy znasz wcześniej.
- Skąd wiecie, jak często robić kopie? Odstęp między kopiami, także kopiami dziennika transakcji, wynika z dwóch Twoich odpowiedzi: na jak długo wolno zatrzymać produkcję i ile danych może przepaść.
- Co zmieniacie podczas przeglądu stanu? Nic, na co się nie zgodzisz. O każdej zmianie wynikającej z przeglądu decydujesz Ty.
- Czy podpisujemy umowę o poufności? Umowa powstaje przy każdym zleceniu, a umowę o poufności dokładamy, jeśli o nią poprosisz.
Pełne prawa do serwera bazy: komu je dać w firmie
Członek stałej roli administratora systemu może wykonać na serwerze każdą czynność i nie da się mu odebrać pojedynczego uprawnienia. Rola administratora bezpieczeństwa nadaje uprawnienia na poziomie serwera, dlatego producent każe traktować ją jak pełne prawa administratora. Członkowie roli twórcy baz mogą zakładać, zmieniać, usuwać i odtwarzać każdą bazę na instancji. Konto w roli administratora systemu albo bezpieczeństwa ma więc w praktyce władzę nad całą instancją, a konto w roli twórcy baz może usunąć albo nadpisać każdą z baz. Członkostwo w tych rolach warto ograniczyć do osób, które rzeczywiście administrują serwerem.
Zasięg
Zdalna obsługa baz danych dla Puław i okolicznych gmin
Administracja bazą nie wymaga naszej obecności w firmie, bo przegląd, prace konserwacyjne i sprawdzanie zgłoszeń wykonujemy zdalnie. Dla bazy firmy z Kurowa czy z Janowca odległość od Puław nie zmienia etapów prac. Zdalny tryb pracy pozwala nam administrować bazami firm z dowolnego miejsca w Polsce, w tym z Warszawy i z całego Lubelskiego.
- Włostowice
- Górna Niwa
- Wólka Profecka
- Mokradki
- Kolejowa
- Marynki
- Działki
- Michałówka
- Puławska Wieś
- Osiedle Niwa
- Osiedle Kołłątaja
- Osiedle Kaniowczyków
Na rozmowę twarzą w twarz zapraszamy do Lublina, na ulicę Królowej Jadwigi 14/81, gdy wcześniej uzgodnimy dzień. Dojeżdżamy na miejsce w województwie lubelskim i w Warszawie. Poza tym obszarem pracujemy zdalnie.
Współpraca
Przegląd, zabezpieczenie, optymalizacja i opieka: przebieg audytu bazy danych
Przegląd stanu SQL Server i źródeł obciążenia serwera
Zaczynamy od spisu: wersje i warianty silnika, rozmiary baz, stan indeksów i kopii oraz zapytania i zadania, które najbardziej obciążają serwer. Jeśli przegląd wskaże coś do zmiany, wprowadzamy to dopiero po rozmowie z Tobą. Na obciążenie wpływa też położenie plików: domyślnie pliki danych i dziennika trafiają na ten sam dysk, co pasuje do serwera z jednym dyskiem. Dla środowiska produkcyjnego producent zaleca osobne dyski, a większość baz dobrze pracuje z jednym plikiem danych i jednym plikiem dziennika.
Aktualna kopia i zapis uprawnień jako punkt powrotu
Przed optymalizacją zabezpieczamy kopie i uprawnienia. Chodzi o aktualną kopię bazy, do której da się wrócić, i zapisany stan kont oraz ich praw, żeby późniejszą zmianę można było cofnąć. Ta sama zasada działa przy awarii: odzyskiwanie danych zaczynamy od zabezpieczenia bieżącego stanu bazy, a wszelkie naprawy odbywają się poza oryginalnymi plikami.
Poprawki najcięższych zapytań i porządek w planie konserwacji
W tym etapie porządkujemy indeksy i statystyki, poprawiamy plan konserwacji i zajmujemy się zapytaniami, które najmocniej obciążają serwer. Pomaga tu wiedza o tym, skąd biorą się statystyki. Przy włączonym automatycznym tworzeniu silnik sam zakłada statystyki pojedynczych kolumn z warunków zapytań, ale w ten sposób nie powstają statystyki obejmujące kilka kolumn naraz. Gdy wartości w kilku kolumnach warunku są ze sobą powiązane, statystyki wielokolumnowe mogą poprawić szacunek liczby wierszy. Objawy, które poprzedzają tę pracę, opisuje artykuł o spowolnieniach bazy danych i ich przyczynach.
Stała opieka nad bazą po zakończeniu optymalizacji
Po optymalizacji przechodzimy do stałej opieki: monitoringu, cyklicznych przeglądów i wsparcia przy awariach. Powiadomienia z monitoringu trafiają do osób, które wskazała firma. Po nieczystym zatrzymaniu instancji każda baza przechodzi przy starcie odzyskiwanie: analizę dziennika, ponowienie zapisanych zmian i wycofanie transakcji, które nie zdążyły się zakończyć. Baza wraca do pracy po wycofaniu, a wariant Enterprise może ją udostępnić wcześniej. Ręczne przerwanie sesji z długą transakcją też uruchamia wycofanie, które może potrwać. W nowszych wydaniach przyspieszone odzyskiwanie bazy, włączane dla konkretnej bazy i dostępne nie w każdym wariancie, kończy wycofanie takich transakcji od razu.
Pytania
Administracja SQL Server w Puławach: najczęstsze pytania
Jesteśmy dostępni w dni powszednie od 8:00 do 20:00, a w sobotę od 9:00 do 16:00. Niedziela obejmuje tylko awarie. Pomoc awaryjna działa bez przerwy, a w godzinach pracy odpowiadamy średnio po piętnastu minutach. Awarie krytyczne obsługujemy również poza zwykłym grafikiem.
Pierwszym ruchem jest zabezpieczenie plików bazy w stanie, w jakim je zastaliśmy; dalsze odzyskiwanie danych prowadzimy już na tych zabezpieczonych plikach, a oryginału nie naprawiamy. Wiele zależy też od tego, jak powstawały kopie. Kopia z sumą kontrolną sprawdza przy zapisie sumy kontrolne tych stron, które je mają, i w ustawieniu domyślnym przerywa się na stronie uszkodzonej. Bez sumy kontrolnej kopii odtwarzanie nie może wiarygodnie zweryfikować stron. Liczenie tej sumy przy kopiach nieskompresowanych trzeba włączyć osobno.
Tak, to jedna z metod. Odłączenie usuwa bazę z instancji, ale zostawia jej pliki danych i dziennika, które da się dołączyć na innym serwerze. Do dołączenia potrzebne są wszystkie pliki danych, a odłączonych plików dziennika nie usuwa się przed udanym dołączeniem. Producent odradza dołączanie i odtwarzanie baz z nieznanych źródeł. U nas przeniesienie zaczyna się tak jak każda praca przy bazie: od przeglądu stanu.
Decyzję o sprzęcie odkładamy do chwili, gdy pomiar wskaże najcięższe zapytania, a indeksy i statystyki będą uporządkowane. Spowolnienie może też wynikać z ustawień samej bazy. Przy włączonej opcji automatycznego zamykania baza zamyka się po wyjściu ostatniego użytkownika, a kolejne połączenie musi ją najpierw otworzyć, co może skończyć się przekroczeniem czasu w programie. Każde takie zamknięcie czyści też pamięć podręczną planów całej instancji, więc kolejne zapytania przez chwilę kompilują się od nowa.
Podaj wersję SQL Server, rozmiar bazy i opis tego, jak robisz kopie, a ocenimy, czy coś wymaga pilnej uwagi. O cenie pracy decydują cztery rzeczy: liczba serwerów i baz, wielkość każdej bazy, porządek w kopiach i uprawnieniach oraz rodzaj zlecenia, czyli jednorazowa naprawa albo stała opieka.
Nie. Nasza praca dotyczy bazy: przede wszystkim indeksów, statystyk, planu konserwacji i kopii zapasowych. Najczęściej pracujemy dla firm produkcyjnych i handlowych, u których na serwerze SQL działa system magazynowy, także pisany na zamówienie. Sprzęt biurowy i sieć to zakres oddzielnej usługi, którą także prowadzimy dla firm.
U nas składają się na to trzy kroki: prawa kont przycinamy do tego, czego naprawdę potrzebują, połączenia spoza firmy do serwera bazy zamykamy albo zawężamy, a kopie szyfrujemy w wariantach Standard i Enterprise (Express tej funkcji nie ma).
Tak. Na spotkania dojeżdżamy w całym województwie lubelskim, więc także do Puław, a do naszego biura w Lublinie zapraszamy po ustaleniu terminu. O dniu i miejscu rozmowy decydujemy wspólnie przez telefon albo mailem.
Ta sama okolica
Pozostałe usługi w Puławach
Opisz nam swój serwer: wersję silnika, rozmiar bazy, kopie
Za pierwszą rozmowę o bazie nic nie płacisz, a decyzja o zleceniu zostaje po Twojej stronie.