Optimizing DBCC CHECKDB Performance
DBCC CHECKDB i instrukcje związane zazwyczaj musi odczytać każdej strona przydzielonego z dysku do pamięci, dzięki czemu może zostać sprawdzona.W związku z tym systemem CHECKDB DBCC, gdy istnieje już dużej aktywności w systemie obniża wydajność DBCC dwóch powodów.Po pierwsze, mniej pamięci nie są dostępne oraz SQL Server Database Engine jest zmuszony do buforowania niektóre dane wewnętrzne CHECKDB DBCC tempdb bazy danych.Po drugie CHECKDB DBCC stara się zoptymalizować sposób, że odczytuje dane z dysku.Jeśli Intensywne obciążenie pracą również używa tego samego dysku, optymalizacji zostanie znacznie zmniejszona, powodujące wykonanie wolniejsze.
Ponieważ tempdb baza danych znajduje się na dysku, wąskie gardło związane z operacji We/Wy podczas zapisywania danych z dysku i obniża wydajność.Niezależnie od działania systemu, uruchomienie CHECKDB DBCC przed dużych baz danych (w stosunku do rozmiaru dostępnej pamięci) powoduje, że buforowania tempdb bazy danych.Dlatego też tempdb bazy danych należy umieścić na szybkie dysku lub dysków, takie jak urządzenie RAID, niezależnie od baz danych użytkowników.Aby uzyskać więcej informacji zobacz ALTER DATABASE języka Transact-SQL) i RAID.
Uwaga
Wykonywanie CHECKDB DBCC automatycznie wykonuje CHECKTABLE DBCC dla każdej tabela w bazie danych, a także DBCC CHECKALLOC i CHECKCATALOG DBCC, eliminując konieczność, aby uruchomić je oddzielnie.