DBCC CHECKDB w MS SQL Server

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

DBCC CHECKDB to polecenie administracyjne w Microsoft SQL Server, służące do sprawdzania spójności logicznej i fizycznej bazy danych. Wykrywa m.in. uszkodzenia stron danych, błędy alokacji, problemy z tabelami systemowymi oraz niespójności indeksów.

Podstawowe zastosowanie

Polecenie wykonuje kontrolę całej bazy danych, a nie pojedynczej tabeli:

DBCC CHECKDB ('sklepAGD');

Oznacza to sprawdzenie spójności bazy sklepAGD. Nie jest to polecenie tworzące kopię zapasową.

Opcja REPAIR_FAST

W zadaniach egzaminacyjnych INF.03 przyjmuje się, że zapis:

DBCC CHECKDB ('sklepAGD', REPAIR_FAST);

sprawdza spójność bazy danych i wykonuje szybką naprawę, głównie związaną z uszkodzonymi indeksami. Dlatego poprawna odpowiedź to: sprawdzi spójność bazy danych i naprawi uszkodzone indeksy.

Ważne rozróżnienia

  • DBCC CHECKDB dotyczy całej bazy danych.
  • DBCC CHECKTABLE dotyczy pojedynczej tabeli.
  • Naprawa indeksów nie oznacza automatycznej naprawy wszystkich uszkodzonych rekordów.
  • Polecenie nie wykonuje backupu.

Uwaga praktyczna

W rzeczywistym administrowaniu SQL Server przed użyciem opcji naprawczych należy wykonać kopię zapasową. Często bezpieczniejszym rozwiązaniem jest odtworzenie bazy z poprawnego backupu niż naprawa uszkodzonej struktury danych.