Aracılığıyla paylaş


DBCC CHECKFILEGROUP (Transact-SQL)

Ayırma ve yapısal bütünlük tüm tabloları ve geçerli veritabanının belirtilen dosya grubu, dizin oluşturulmuş görünümler.

Topic link iconTransact-SQL sözdizimi kuralları

DBCC CHECKFILEGROUP 
[
    [ ( { filegroup_name | filegroup_id | 0 } 
        [ , NOINDEX ] 
    ) ]
    [ WITH 
        { 
            [ ALL_ERRORMSGS | NO_INFOMSGS ] 
            [ , TABLOCK ] 
            [ , ESTIMATEONLY ]
            [ , PHYSICAL_ONLY ]  
        } 
    ]
]

Bağımsız değişkenler

  • filegroup_name
    Adı geçerli veritabanında tablo ayırma ve yapısal denetlemek, dosya grubu bütünlük.Belirtilmezse veya 0 belirtilirse, birincil dosya grubu varsayılandır.Dosya grubu adları kuralları ile uyumlu olmalıdırtanımlayıcılar.

    filegroup_name FILESTREAM dosya grubu olamaz.

  • filegroup_id
    Dosya grubu kimliği (ID) sayısı geçerli veritabanında, denetleme tablo ayırma ve yapısal bütünlüğü.

  • NOINDEX
    Kullanıcı tablosu için kümelenmemiş dizinler yoğun denetimleri değil gerçekleştirilmesi gerektiğini belirtir.Bu genel çalışma zamanı azaltır.DBCC CHECKFILEGROUP her zaman tüm sistem tablosu dizinler çünkü sistem tabloları NOINDEX etkilemez.

  • ALL_ERRORMSGS
    Sınırsız sayıda nesne başına hataları görüntüler.InSQL Server 2008hizmet Pack 1 (SP1), tüm hata iletileri varsayılan olarak görüntülenirBelirterek veya bu seçenek kullanılmazsa, hiçbir etkisi yoktur.Önceki sürümlerindeALL_ERRORMSGS belirtilmezse, SQL Server(exceptSQL Server 2005SP3), yalnızca ilk 200 hata iletileri her nesne için görüntülenen.

  • NO_INFOMSGS
    Engeller tüm bilgilendirici iletileri.

  • TABLOCK
    DBCC CHECKFILEGROUP neden elde kilit yerine bir iç veritabanı anlık görüntü görüntü görüntü görüntüsü.

  • YALNIZCA TAHMİNİ
    Tempdb alanı DBCC CHECKFILEGROUP tüm diğer belirtilen seçenekleri ile çalıştırmak için gerekli tahmini miktarını görüntüler.

  • PHYSICAL_ONLY
    Sınırlar için sayfa üstbilgi kaydı ve B ağaçlarının fiziksel yapısını fiziksel yapısının bütünlüğünü denetleme.Küçük bir genel gider denetimi fiziksel dosya grubu tutarlılığını sağlamak üzere tasarlanmış bozuk sayfalar ve veri olumsuz etkileyebilir, genel donanım hataları da bu denetim algılayabilir.DBCC CHECKFILEGROUP, tam bir çalışma daha önceki sürümlerinde, oldukça uzun sürebilir.Bu davranış aşağıdaki nedenlerden dolayı oluşur:

    • Mantıksal denetimleri, daha kapsamlı olur.

    • Bazı alt düzeydeki yapıları denetlenecek daha karmaşıktır.

    • Birçok yeni denetimleri yeni özellikler ortaya.

    Bu nedenle, PHYSICAL_ONLY seçeneğini kullanarak bir çok daha kısa çalışma zamanı için DBCC CHECKFILEGROUP büyük dosya gruplarını neden olabilir ve bu nedenle üretim sistemlerinde sık kullanım için önerilir.Yine de tam bir çalışma DBCC CHECKFILEGROUP, düzenli olarak yapılması önerilir.Sıklığı bu çalışır, tek işletmeler ve üretim ortamlarında belirli etkenlere bağlıdır.PHYSICAL_ONLY her zaman NO_INFOMSGS anlamına gelir ve onarım seçenekleri herhangi biri ile izin verilmez.

    Not

    Tüm atlamak, DBCC CHECKFILEGROUP PHYSICAL_ONLY neden belirtilmesi, FILESTREAM veri denetler.

Remarks

DBCC CHECKFILEGROUP ve DBCC CHECKDB benzer DBCC komutlardır.Temel fark DBCC CHECKFILEGROUP gerekli tabloları ve belirtilen tek dosya grubu için sınırlı olmasıdır.

DBCC CHECKFILEGROUP aşağıdakileri gerçekleştirir:

DBCC CHECKALLOC'u veya DBCC CHECKTABLE DBCC CHECKFILEGROUP ayrı ayrı çalışan gerekli değildir.

İç Veritabanı anlık görüntü

DBCC CHECKFILEGROUP, bu denetimleri gerçekleştirmek için gereken işlem tutarlılığı sağlamak için bir iç veritabanı anlık görüntü görüntü görüntü görüntüsü görüntüyü kullanır.Daha fazla bilgi için bkz:Veritabanı anlık görüntü olarak seyrek dosya boyutları'nı anlamave "DBCC iç veritabanı anlık görüntü kullanımı" bölümündeDBCC (Transact-SQL).

anlık görüntü görüntü oluşturulamaz veya TABLOCK seçenek, kilit gerekli tutarlılık elde etmek için DBCC CHECKFILEGROUP tutar.Bu durumda, bir veritabanını özel kullanım kilit ayırma denetimleri gerçekleştirmek için gerekli olan ve paylaşılan tablo kilit tablo denetimleri gerçekleştirmek için gerekli değildir.TABLOCK Ağır yük altında bir veritabanına daha hızlı çalıştırmak, DBCC CHECKFILEGROUP neden olur, ancak DBCC CHECKFILEGROUP çalışırken kullanılabilir veritabanı eşzamanlılık azaltır.

Not

DBCC CHECKFILEGROUP karşı tempdb çalışan, her tahsisat denetim gerçekleştirmez ve tablo denetimleri gerçekleştirmek için paylaşılan tablo kilidi almanız gerekir.Bu, performansı artırmak için veritabanı Snapshot tempdb üzerinde kullanılamaz çünkü.Yani, gerekli işlem tutarlılığı alınamıyor.

Paralel nesneleri denetleme

Varsayılan olarak, DBCC CHECKFILEGROUP paralel nesnelerin denetimini gerçekleştirir.Parallelism derecesini otomatik olarak sorgu işlemcisi tarafından belirlenir.Parallelism en büyük ölçüde yalnızca paralel sorgular gibi yapılandırılır.İçin en yüksek işlemci DBCC denetimi için sınırlama kullanınsp_configure.Daha fazla bilgi için bkz:parallelism seçeneği en büyük ölçüde.

Paralel denetimi izleme bayrağı 2528 kullanarak devreden çıkarılabilir.Daha fazla bilgi için bkz:İzleme Bayrakları (Transact-SQL).

Ayrı Filegroups üzerinde kümelenmemiş dizinler

Varsa bir kümelenmemiş dizin belirtilen dosya grubunu ilişkili olduğu temel tablo, doğrulama için kullanılabilir olmadığı için başka bir dosya grubu bir tablo ile dizin denetlenir.Bu davranış değişikliğiSQL Server 2005.Önceki sürümlerindeSQL Server, kümelenmemiş dizin ve temel tablo diğer dosya grubu denetlenir.Hem kümelenmemiş dizinleri ve temel tablolar, çalıştırmak içinDBCC CHECKDB.

Varsa bir tablo belirtilen dosya grubunu başka bir dosya grubu kümelenmemiş bir dizin varsa, kümelenmemiş dizin aşağıdaki nedenle seçili değilse:

  • Temel tablo yapısını kümelenmemiş bir dizin yapısına bağlı değildir.Kümelenmemiş dizinleri temel tablo doğrulamak için taranması gerekmez.

  • DBCC CHECKFILEGROUP komutu, nesneleri yalnızca belirtilen dosya grubu doğrular.

kümelenmiş dizin ve tablo farklı dosya gruplarını olamaz; bu nedenle, önceki konuları sadece kümelenmemiş dizinleri uygulanır.

Bölümlenmiş tablolar ayrı Filegroups '

SürümlerindeSQL Server 2005hizmet Pack 2 (SP2) öncesi DBCC CHECKFILEGROUP denetler bölümlenmiş bir tablo yalnızca ise tüm tabloyu belirtilen dosya grubu.Tablonun birden fazla dosya grubuna yayılır, tüm tabloyu göz ardı edilir.Birden fazla dosya grubuna göre bölümlenmiş tablo varsa, SP2 ve sonraki DBCC CHECKFILEGROUP var belirtilen dosya grubu ve satır kümeleri ', diğer dosya gruplarını dikkate almaz bölüm Satır kümeleri denetler.Bilgi iletisi 2594 işaretli bölümler gösterir.Belirtilen dosya grubu yerleşik olmayan kümelenmemiş dizinleri denetlenmez.

DBCC hata iletileri anlama

DBCC sonra CHECKFILEGROUP komut tamamlandıktan, bir ileti yazılırSQL Serverhata günlüğüDBCC komutu başarıyla yürütür, iletiyi başarılı bir tamamlama ve komutu çalıştıran süreyi gösterir.Denetim bir hata nedeniyle tamamlamadan önce DBCC komutunu durdurur, ileti komut sonlandırıldı, bir durum değeri ve komutu çalıştırdığınız saat miktarını gösterir.Aşağıdaki tabloda, listeler ve iletide bulunan durum değerleri açıklanmaktadır.

STATE :

Açıklama

0

Hata numarası 8930 ortaya çıktı.Bu meta veriler bozulma nedeniyle sona erdirmek DBCC komutunu gösterir.

1

Hata numarası 8967 ortaya çıktı.DBCC iç hata oluştu.

2

Acil Durum modu veritabanı onarım sırasında bir hata oluştu.

3

Bu meta veriler bozulma nedeniyle sona erdirmek DBCC komutunu gösterir.

4

Assert veya erişim ihlali algılandı.

5

DBCC komutu sona bilinmeyen bir hata oluştu.

Hata bildirimi

Mini-döküm dosyası (SQLDUMP nnnn .txt) oluşturulan SQL ServerGünlük dizini her DBCC CHECKFILEGROUP algılar bir bozulma hatası.Özelliğinin kullanımı, veri koleksiyon ve hata raporlama özellikleri örnek için etkinleştirildiSQL Serverdosya otomatik olarak iletilmesi içinMicrosoft.Toplanan veriler geliştirmek için kullanılırSQL Serverişlev.

Döküm dosyasını DBCC CHECKFILEGROUP komutu ve ek tanılama çıkış sonuçlarını içerir.Dosya, isteğe bağlı erişim denetimi listelerinde (DACL) kısıtladı.Sınırlı erişimiSQL Serverhizmet hesabı ve üyelerisysadminrol.Varsayılan olarak,sysadminrolü içeren tüm üyeleri Windows BUILTIN\Administrators grubu ve yerel yönetici grubu.Veri koleksiyon işlemi başarısız olursa DBCC komutu başarısız..

Hata giderme

DBCC CHECKFILEGROUP tarafından bildirilen hataları, veritabanını, veritabanının yedek kopyasından geri öneririz.Onarım seçenekleri için DBCC CHECKFILEGROUP belirtilemez dikkat edin.

Yedeğiniz varsa, belirtilen bir onarım seçeneğini DBCC CHECKDB çalışan bildirilen hataları düzeltir.Onarım seçeneğini kullanmak için hatalar rapor, listenin sonunda belirtilir.REPAIR_ALLOW_DATA_LOSS seçeneğini kullanarak hataları düzeltmek, bazı sayfaları ve bu nedenle veri silinmesi gerekebilir.

Sonuç Kümeleri

DBCC CHECKFILEGROUP (değerleri değişebilir) aşağıdaki sonuç kümesi verir:

  • ESTIMATEONLY veya NO_INFOMSGS belirtildiğinde dışında.

  • Geçerli veritabanı için veritabanı belirtilmemişse, olsun veya olmasın tüm seçenekleri (NOINDEX) belirtilir.

DBCC results for 'master'.
DBCC results for 'sys.sysrowsetcolumns'.
There are 630 rows in 7 pages for object 'sys.sysrowsetcolumns'.
DBCC results for 'sys.sysrowsets'.
There are 97 rows in 1 pages for object 'sys.sysrowsets'.
DBCC results for 'sysallocunits'.
There are 195 rows in 3 pages for object 'sysallocunits'.

There are 2340 rows in 16 pages for object 'spt_values'.
DBCC results for 'MSreplication_options'.
There are 2 rows in 1 pages for object 'MSreplication_options'.
CHECKFILEGROUP found 0 allocation errors and 0 consistency errors in database 'master'.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

NO_INFOMSGS belirtilmezse, DBCC CHECKFILEGROUP verir:

DBCC execution completed. If DBCC printed error messages, contact your system administrator.

ESTIMATEONLY belirtilmezse, DBCC CHECKFILEGROUP döndürür (değerlerini değişebilir):

Estimated TEMPDB space needed for CHECKALLOC (KB) 
------------------------------------------------- 
15

(1 row(s) affected)

Estimated TEMPDB space needed for CHECKTABLES (KB) 
-------------------------------------------------- 
207

(1 row(s) affected)

DBCC execution completed. If DBCC printed error messages, contact your system administrator.

İzinler

Üyelik gerektirensysadminsabit sunucu rolü veyadb_ownersabit veritabanı rolü.

Örnekler

C.AdventureWorks veritabanındaki PRIMARY dosya grubu denetleme

Aşağıdaki örnek denetimleriAdventureWorksveritabanı birincil dosya grubu.

B.Kümelenmemiş dizinleri olmayan AdventureWorks PRIMARY dosya grubu denetleme

Aşağıdaki örnek denetimleriAdventureWorks Dosya veritabanı birincil grubu (kümelenmemiş dizinler hariç) belirterek kimlik numarasını belirterek ve birincil dosya grubuNOINDEX.

C.PRIMARY dosya grubu seçenekleriyle denetleme

Aşağıdaki örnek denetimlerimasterveritabanı birincil dosya grubu ve seçeneği belirtirESTIMATEONLY.

Değişiklik Geçmişi

Güncelleştirilmiş içerik

Yer ALL_ERRORMSGS, açıklanan yeni işlevlerSQL Server 2008SP1'i.

PHYSICAL_ONLY yan tümce sözdizimi ve bağımsız değişkenleri bölümlerine eklenir.