DBCC (Transact-sql)
Transact-SQLVeritabanı Konsolu komutları'için bu görevi dbcc deyimleri sağlayan programlama dili SQL Server.
Veritabanı Konsolu Komutu'ndaki deyimleri aşağıdaki kategorilere gruplandırılır.
Komut kategorisi |
Gerçekleştirme |
---|---|
Bakım |
Bakım görevlerini veritabanı, dizin veya dosya grubu. |
Çeşitli |
Izleme bayrakları etkinleştirme veya dll bellekten kaldırma gibi çeşitli görevler. |
Bilgilendirme |
Görevleri toplamak ve çeşitli bilgi türlerini görüntüler. |
Doğrulama |
Bir veritabanı, tablo, dizin, katalog, filegroup veya veritabanı sayfa ayırma işlemleri doğrulama. |
dbcc komutlarını giriş parametreleri almak ve değerlerini döndürür. Tüm dbcc komut parametrelerini Unicode ve dbcs harflerin kabul edebilir.
dbcc iç veritabanı anlık kullanım
Aşağıdaki dbcc komutlarını çalışan bir iç salt okunur veritabanı anlık Veritabanı Altyapısıoluşturur. Bu yöntem, bu komutlar çalıştırıldığında tıkanma ve eşzamanlılık sorunlarını önler. Daha fazla bilgi için, bkz. Anlık görüntüleri veritabanı (SQL Server).
DBCC CHECKALLOC |
DBCC CHECKDB |
DBCC CHECKCATALOG |
DBCC CHECKFILEGROUP |
DBCC CHECKTABLE |
|
Bir bu dbcc komut çalıştırdığınızda Veritabanı Altyapısıveritabanı anlık oluşturur ve sonucuna tutarlı bir duruma getiriyor. dbcc komut, karşı bu anlık Çekler sonra çalışır. dbcc komut tamamlandıktan sonra bu anlık bırakılır.
Bazen bir iç veritabanı anlık görüntüsünü gerekli değildir veya oluşturulamıyor. Bu durumda, asıl veritabanında dbcc komutu yürütür. Veritabanı çevrimiçi ise, dbcc komut, onu kontrol nesneleri tutarlılığını sağlamak için Tablo kilitleme kullanır. Sanki ile tablock seçeneği belirtilmiş bu davranışı aynıdır.
dbcc komut yürütüldüğünde bir iç veritabanı anlık oluşturulur:
Karşı ana, örneğini SQL Servertek kullanıcı modunda çalışıyor.
Başka bir veritabanında ana, ancak veritabanı tek kullanıcı modunda tarafından alter database deyimini kullanarak koymak olmuştur.
Salt okunur bir veritabanı karşı.
alter database deyimini kullanarak Acil moduna ayarlanmış veritabanı karşı.
Karşı tempdb. Bu durumda, veritabanı anlık iç kısıtlamaları nedeniyle oluşturulamıyor.
tablock ile seçeneğini kullanarak. Bu durumda, dbcc veritabanı snapshot oluşturma değil istek onur.
Komutu aşağıdaki karşı yürütüldüğünde dbcc komutlarını iç veritabanı anlık görüntüleri yerine tablo kilitleri kullanın:
Salt okunur bir dosya grubu
fat dosya sistemi
'Adlı akışları' desteği olmayan bir birime
'Alternatif akımları' desteği olmayan bir birime
[!NOT]
dbcc checkalloc veya dbcc checkdb, eşdeğer bir parçası ile tablock seçeneğini kullanarak çalıştırmak çalışan bir veritabanı x kilit gerektirir. Bu veritabanı kilit üzerinde ayarlanamaz tempdb veya ana ve muhtemelen tüm diğer veritabanları üzerinde başarısız olur.
[!NOT]
dbcc checkdb karşı çalıştırıldığında başarısız ana bir iç veritabanı anlık görüntüsünü oluşturduysanız.
dbcc komutlar için raporlama ilerleme
Sys.dm_exec_requests Katalog görünümü ilerleme ve dbcc checkdb, CHECKFILEGROUP ve checktable komutlarının yürütülmesini geçerli aşaması hakkında bilgi içerir. Percent_complete sütunu, komut, tamamlanma yüzdesini gösterir ve komut sütun rapor yürütme komutu geçerli aşaması.
İlerleme birimi tanımı yürütme dbcc komutu geçerli aşaması üzerinde bağlıdır. Bazen ilerleme içinde tek bir veritabanı veya ayırma onarım parçalı yapı bildirilen diğer aşamalarında bir veritabanı sayfası parçalı yapı bildirilmektedir. Aşağıdaki tabloda her aşamasını yürütme ve parçalı yapı komutu ilerleme raporları açıklar.
Yürütme aşaması |
Açıklama |
İlerleme raporlama parçalı yapı |
---|---|---|
DBCC TABLO ONAY |
Veritabanındaki nesnelerin fiziksel ve mantıksal tutarlılık bu evre sırasında denetlenir. |
Ilerleme veritabanı sayfa düzeyinde bildirdi. Değeri bildirdiği ilerleme denetlenir her 1000 veritabanı sayfaları için güncelleştirilir. |
DBCC TABLO ONARIM |
Veritabanı onarımı REPAIR_FAST, REPAIR_REBUILD veya REPAIR_ALLOW_DATA_LOSS belirtilen ve onarılması nesne hataları varsa bu evre sırasında gerçekleştirilir. |
Devam eden bireysel onarım düzeyinde bildirdi. Sayaç tamamlandığında her onarım için güncelleştirilir. |
DBCC AYIRMA ONAY |
Tahsisat yapıları veritabanında bu evre sırasında denetlenir.
Not
dbcc checkalloc aynı denetler.
|
İlerleme bildirilen değil |
DBCC AYIRMA ONARIM |
Veritabanı onarımı REPAIR_FAST, REPAIR_REBUILD veya REPAIR_ALLOW_DATA_LOSS belirtilen ve onarılması ayırma hataları varsa bu evre sırasında gerçekleştirilir. |
İlerleme rapor değildir. |
DBCC SYS ONAY |
Veritabanı sistem tabloları bu evre sırasında denetlenir. |
Ilerleme veritabanı sayfa düzeyinde bildirdi. Değeri bildirdiği ilerleme denetlenir her 1000 veritabanı sayfaları için güncelleştirilir. |
DBCC SYS ONARIM |
Veritabanı onarımı REPAIR_FAST, REPAIR_REBUILD veya REPAIR_ALLOW_DATA_LOSS belirtilen ve onarılması sistem tablosu hataları varsa bu evre sırasında gerçekleştirilir. |
Devam eden bireysel onarım düzeyinde bildirdi. Sayaç tamamlandığında her onarım için güncelleştirilir. |
Onay |
SQL ServerService Broker nesneleri bu evre sırasında denetlenir.
Not
dbcc checktable yürütüldüğünde Bu aşama yürütülür.
|
İlerleme rapor değildir. |
DBCC CHECKCATALOG |
Veritabanı kataloglar tutarlılık bu evre sırasında denetlenir.
Not
dbcc checktable yürütüldüğünde Bu aşama yürütülür.
|
İlerleme rapor değildir. |
DBCC IVIEW ONAY |
Veritabanında varolan tüm dizin oluşturulmuş görünümler mantıksal tutarlılık bu evre sırasında denetlenir. |
İlerleme olup olmadığı denetleniyor tek tek veritabanı görünümü düzeyinde bildirdi. |
Bilgilendirme deyimleri
Doğrulama deyimleri
|