Files
DBAdmin/Capacities/Database Check list.md
2026-06-18 11:54:38 +00:00

5.6 KiB
Raw Permalink Blame History

type, collections, title, aliases, description, icon, createdAt, lastUpdated, tags, coverImage
type collections title aliases description icon createdAt lastUpdated tags coverImage
Page Knowledge Base, SOP, DataBase Database Check list null null null 2025-08-29T11:38:54.130Z 2026-06-18T11:46:54.188Z
null

Jako postępowy administrator powinienem sobie sporo rzeczy automatyzować, jednak nie można mieć zaufania do narzędzi automatyzujących i czasami należy jednak zrobić samemu niektóre rzeczy, zamiast automatu. Wywodzę się ze starej szkoły gdzie każdy, no prawie każdy administrator ma swoje skrypty i listę wedłóg której organizuje sobie pracę. 

 

Czynności codzienne 

  • Przegląd zadań w SQL Agent 

  • Sprawdzenie procesów nocnych. Przeważnie jest do tego specjalny zespół utrzymaniowy ale w przypadku małych firm to  z reguły administrator baz danych jest odpowiedzialny za przegląd tych zadań. Jeśli jesteś szczęśliwcem, że nie musisz tego robić to pamiętaj że coś takiego istnieje. 

  • Przeważnie związane jest to z punktem poprzedzającym jednakże nie zawsze jest to tak samo jednoznaczne. 

  • Sprawdzenie czy jest odpowiednia ilość wolnego miejsca na dyskach gdzie są bazy danych. 

  • Kopie zapasowe - sprawdzenie czy wykonały się wszystkie backupy. Tutaj nie rozróżniam backupów pełnych czy przyrostowych bo to już jest efektem wcześniejszego planowania. My sprawdzamy tylko wykonywanie.  

  • W przypadku braku jakiegokolwiek backupu należy zaplanować kolejny backup. Należy w tym miejscu pamiętać że wykonanie kopii zapasowych mogą obciążać system więc w przypadku dużych systemów ten proces należy zaplanować poza pracą użytkowników 

  • Przeglądamy czy nie ma błędów ani innych dziwnych informacji w logu serwera. 

  • Jeśli jesteśmy odpowiedzialni za system operacyjny przeglądamy także logi serwera. W tym miejscu należy sprawdzić nie tylko serwery "standalone" ale także logi związane z klastrami Windows. 

  • Sprawdzamy czy nie ma błędów w środowiskach wysokodostępnych takich jak AlwaysOn, LogShipping, Replikacjach, Mirroringu itp.. 

  • Przegląd logów bezpieczeństwa np. czy nie ma jakiś niepowołanych logowań, nieautoryzowanych zmian 

  • Przeglądamy także fora branżowe i strony producentów ba danych w poszukiwaniu ważnych informacji dla działania naszego systemu takie jak poprawki, ciekawe skrypty lub rozwiązania problemów. 

  • Sprawdzamy czy nie możemy poprawić środowiska bazodanowego. 

 

Jak już wszystko zakończymy planujemy zadania mające na celu naprawę znalezisk. 

Co tydzień lub co miesiąc 

  • Sprawdzamy (weryfikujemy) kopie bezpieczeństwa. Najlepszym sposobem jest odtworzenie jednak w przypadku SQL Server i Oracle jest opcja która umożliwia walidację backupów bez odtwarzania. Wiele procedur bezpieczeństwa dla firm ubezpieczeniowych lub banków ma obowiązek sprawdzania pełnego odtwarzania baz danych przynajmniej raz w roku więc widać że sprawa jest naprawdę ważna. 

  • Sprawdzenie czy nie ma dostępnych aktualizacji oprogramowania. 

  • Weryfikujemy czy zadania sprawdzające bazy danych wykonało się poprawnie. 

  • Weryfikujemy czy zadania przebudowujące indeksy wykonało się prawidłowo 

  • Ważne jest planowanie i tak przynajmniej raz w miesiącu sprawdzamy czy starczy nam miejsca na bazę danych. W dużych firmach odpowiedzialny jest za to odpowiedni zespół ale jak jesteśmy małą firmą to musimy sami to zrobić. W tym miejscu ważne jest że wiemy ile danych przybywa, ale to temat na oddzielną opowieść. 

  • Sprawdzamy jak są pofragmentowane nasze bazy danych czy przypadkiem nie potrzebujemy przebudować naszych indeksów. 

  • Usuwamy (blokujemy) użytkowników których nie potrzebujemy. 

  • Sprawdzamy czy bazy danych nie wymagają wykonania shrink database aby zwolnić miejsce na dysku. 

Jak wiemy nie wszystko trzeba tak naprawdę sprawdzać ręcznie jest w tym miejscu na  

Opportunities for Automation  

  • Setup alerts for specific error levels or error messages that impact your SQL Servers in order to be notified automatically.  

  • Database Backup and Restore Failure Notifications 

  • Setup Jobs to query for specific conditions in your tables to validate data was loaded or data is being added to specific tables based on your business processes throughout the day.  

  • Setup notification on Job success, failure or completion.  

  • One word of warning is to check your business critical Jobs on a regular basis just to be sure they are working properly. Nothing is worse than finding out a key process has been failing for days, weeks or months and the reason notifications have not been sent are due to an incorrect configuration, full mailbox, etc. It may be 30 minutes on a weekly basis that is time well spent. 

  • Setup centralized error handling on a per SQL Server, application or enterprise basis then determine the business rules for specific error conditions. 

Next Steps 

  • Based on your environment and your needs, build the daily, weekly and monthly checklist that is needed.  

  • As a start it may be easier to manually check for specific business or data conditions, then as you build your scripts over time work towards assembling them for an automated process.  

  • Do you have other aspects of SQL Server that you check on a regular basis? If so, send us your thoughts to include in this tip and we will cite your contribution to the tip - tips@mssqltips.com.  

Z <https://www.mssqltips.com/sqlservertip/1240/sql-server-dba-checklist/>