Microsoft, Microsoft SQL Server 2008 R2, SQL Server 2008 R2 SP1 ve SQL Server 2008 düzeltmelerini indirilebilir tek bir dosya olarak dağıtır. Düzeltmeler birikimli olduğundan, her yeni sürüm bir önceki SQL Server SQL Server 2008 R2, SQL ServerSQL Server 2008 R2 SP1 ve SQL Server SQL Server 2008 2008 düzeltme sürümünde yer alan tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir.
Giriş
DBCC CHECKDB komutu, performans ve kaynaklar arasındaki gereksinimi dengeler. Bu nedenle, DBCC CHECKDB komutu, bir veritabanı için tutarlılık denetimleri çalıştırıldığında varsayılan olarak kaynak kullanımını en üst düzeye çıkarmayabilir.
Örneğin, DBCC CHECKDB komutu, bir veritabanı için tutarlılık denetimleri çalıştırıldığında disk G/Ç kullanımını en üst düzeye çıkarmayabilir.
Çözüm
Toplu güncelleştirme bilgileri
SQL ServerSQL Server 2008 Service Pack 2
Bu soruna yönelik düzeltme ilk olarak SQL Server 2008 Service Pack 2 için Toplu Güncelleştirme 9'da yayımlanmıştır. Bu toplu güncelleştirme paketi hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
SQL Server 2008 Service Pack 2 için 2673382 Toplu Güncelleştirme Paketi 9
Notlar Derlemeler birikimli olduğundan, her yeni düzeltme önceki SQL Server 2008 düzeltme sürümüne eklenmiş olan tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Bu düzeltmeyi içeren en son düzeltme sürümünü uygulamayı düşünmenizi öneririz. Daha fazla bilgi için, aşağıdaki Microsoft Bilgi Bankası makalesine bakın:
2402659 SQL Server 2008 Service Pack 2 yayınlandıktan sonra yayımlanan SQL Server 2008 derlemeleri
Microsoft SQL ServerSQL Server 2008 düzeltmeleri belirli SQL ServerSQL Server hizmet paketleri için oluşturulur. Bir SQL ServerSQL Server 2008 Service Pack 2 yüklemesine bir SQL ServerSQL Server 2008 Service Pack 2 düzeltmesi uygulamanız gerekir. Varsayılan olarak, bir SQL ServerSQL Server hizmet paketinde sağlanan tüm düzeltmeler, bir sonraki SQL ServerSQL Server hizmet paketine dahil edilir.
SQL ServerSQL Server 2008 Service Pack 3
Bu soruna yönelik düzeltme ilk olarak SQL Server 2008 Service Pack 3 için Toplu Güncelleştirme 4'te yayımlanmıştır. Bu toplu güncelleştirme paketi hakkında daha fazla bilgi için aşağıdaki Microsoft Bilgi Bankası makalesine bakın:
SQL Server 2008 Service Pack 3 için 2673383 Toplu Güncelleştirme Paketi 4
Notlar Derlemeler birikimli olduğundan, her yeni düzeltme önceki SQL Server 2008 düzeltme sürümüne eklenmiş olan tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Microsoft, bu düzeltmeyi içeren en son düzeltme sürümünü uygulamayı düşünmenizi önerir. Daha fazla bilgi için, aşağıdaki Microsoft Bilgi Bankası makalesine bakın:
2629969 SQL Server 2008 Service Pack 3 yayımlandıktan sonra yayımlanan SQL Server 2008 derlemeleri
Microsoft SQL ServerSQL Server 2008 düzeltmeleri belirli SQL ServerSQL Server hizmet paketleri için oluşturulur. SQL ServerSQL Server 2008 Service Pack 3 yüklemesine bir SQL ServerSQL Server 2008 Service Pack 3 düzeltmesi uygulamanız gerekir. Varsayılan olarak, bir SQL ServerSQL Server hizmet paketinde sağlanan tüm düzeltmeler, bir sonraki SQL ServerSQL Server hizmet paketine dahil edilir.
Cumulative update package 11 for SQL ServerSQL Server 2008 R2
Bu soruna yönelik düzeltme ilk olarak Toplu Güncelleştirme 11'de yayınlandı. SQL Server 2008 R2'ye yönelik bu toplu güncelleştirme paketini edinme hakkında daha fazla bilgi için aşağıdaki Microsoft Bilgi Bankası makalesine bakın:
2633145 SQL Server 2008 R2 için Toplu Güncelleştirme Paketi 11
Notlar Derlemeler birikimli olduğundan, her yeni düzeltme önceki SQL Server 2008 R2 düzeltme sürümüne dahil edilen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Bu düzeltmeyi içeren en son düzeltme sürümünü uygulamayı düşünmenizi öneririz. Daha fazla bilgi için, aşağıdaki Microsoft Bilgi Bankası makalesine bakın:
981356 SQL Server 2008 R2 yayınlandıktan sonra yayımlanan SQL Server 2008 R2 derlemeleri
SQL Server 2008 R2 SP1 için toplu güncelleştirme paketi 4
Bu soruna yönelik düzeltme ilk olarak Toplu Güncelleştirme 4'te yayınlandı. SQL Server 2008 R2 SP1 için bu toplu güncelleştirme paketini edinme hakkında daha fazla bilgi için aşağıdaki Microsoft Bilgi Bankası makalesine bakın:
2633146 SQL Server 2008 R2 SP1 için Toplu Güncelleştirme Paketi 4
Notlar Derlemeler birikimli olduğundan, her yeni düzeltme önceki SQL Server 2008 R2 SP1 düzeltme sürümüne eklenmiş olan tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Bu düzeltmeyi içeren en son düzeltme sürümünü uygulamayı düşünmenizi öneririz. Daha fazla bilgi için, aşağıdaki Microsoft Bilgi Bankası makalesine bakın:
2567616 SQL Server 2008 R2 SP1'den sonra yayımlanan SQL Server 2008 R2 derlemeleri
SQL Server 2012
SQL ServerSQL Server 2012, bu düzeltmeler için kod değişikliklerini içerir. Aşağıda açıklandığı gibi hem 2562 hem de 2549 izleme bayrağı SQL Server 2012 için de geçerlidir. Ancak, DBCC_MULTIOBJECT_SCANNER mandalındaki çekişmeyi azaltmaya yönelik düzeltme, SQL Server 2012'de izleme bayrağı 2562'yi gerektirmez. Bu değişiklikler SQL Server 2012'de varsayılan olarak dahil edildi.
Daha Fazla Bilgi
Bu toplu güncelleştirme, kullanıcı DBCC CHECKDB komutunu yürüttüğünde disk G/Ç kaynak kullanımını daha iyi bir şekilde en üst düzeye çıkarmak için iki izleme bayrağı sunar. Bu geliştirmeler yalnızca PHYSICAL_ONLY seçeneğini hedef alsa da, PHYSICAL_ONLY seçeneğini kullanmayan DBCC CHECKDB komutlarının genel performansını da geliştirebilir.
İzleme bayrağı 2562
Bu izleme bayrağı aşağıdaki değişiklikleri içerir:
- DBCC CHECKDB komutunu, veritabanındaki dizin sayısına bakılmaksızın tek bir "toplu" olarak çalıştırın. Varsayılan olarak, DBCC CHECKDB komutu, bir "batches" kavramı kullanarak oluşturduğu dizin veya "olgu" sayısını sınırlayarak tempdb kaynaklarını en aza indirmeye çalışır. Bu izleme bayrağı tüm işlemleri tek bir toplu işleme zorlar.
- Veritabanından hangi sayfaların okunacağını saptamak için dahili işlemi geliştirin. Bu, DBCC_MULTIOBJECT_SCANNER mandalındaki çekişmeyi azaltır.
Bu izleme bayrağını kullanmanın bir etkisi, tempdb veritabanı için alan gereksinimlerinin artabilmesidir. tempdb veritabanı, DBCC CHECKDB komutu tarafından işlenen kullanıcı veritabanının yüzde 5'ine veya daha fazlasına büyüyebilir. Bu nedenle, DBCC CHECKDB komutunun performansını yavaşlatabilecek otomatik büyümeden kaçınmak için bu izleme bayrağını kullandığınızda tempdb veritabanını boyutunuzun en az yüzde 5'i olacak şekilde önceden boyutlandırmanızı öneririz.
Notlar İzleme bayrağı 2562, oturum düzeyinde bir izleme bayrağıdır. Oturum düzeyinde etkinleştirebilirsiniz.
İzleme bayrağı 2549
DBCC CHECKDB komutu, tüm veritabanı dosyalarında benzersiz disk sürücüsü başına okunacak sayfaların dahili bir listesini oluşturur. Bu mantık, benzersiz disk sürücülerini her dosyanın fiziksel dosya adının sürücü harfine göre belirler. Sürücü harfleri gerçekten benzersiz olduğunda veya olmadığında temel diskler benzersizse, DBCC CHECKDB komutu bunları tek bir disk olarak kabul eder. Bu izleme bayrağı etkinleştirildiğinde, her veritabanı dosyasının benzersiz bir disk sürücüsünde olduğu varsayılır. Her dosyanın benzersiz bir fiziksel diske dayalı olduğunu bilmiyorsanız bu izleme bayrağını kullanmayın.
Notlar İzleme bayrağı 2549, genel bir izleme bayrağıdır. Etkinleştirmek için, başlangıç parametresi olarak kullanmanız veya DBCC TRACEON (2549,-1) kullanmanız gerekir.
Bu izleme bayrakları DBCC CHECKDB seçeneğinin kullanımını hedefleyen DBCC CHECKDB komutlarının performansını geliştirmekle birlikte, bazı kullanıcılar performansta herhangi bir gelişme görmeyebilir. Bu izleme bayrakları disk G/Ç kaynaklarının kullanımını geliştirirken, disk kaynaklarının temel performansı DBCC CHECKDB komutunun genel performansını sınırlayabilir.
Aşağıdaki kısıtlamalara dikkat edin:
- Performans geliştirmeleri, onarım seçeneğini kullandığınızda performansı artırmaya yönelik değildir.
Örneğin, REPAIR_ALLOW_DATA_LOSS seçeneğini kullandığınızda performans geliştirmeleri performansı artırmaya yönelik değildir. - Geliştirmeler DBCC CHECKALLOC komutunu etkilemez.
- Geliştirmeler, çok sayfalı dizinler için DBCC CHECKTABLE komutunun performansına yardımcı olabilir. Ancak, geliştirmeler DBCC CHECKTABLE komutunun performansını artırmaya yönelik değildir.
Durum
Microsoft bunun, "Şunlar için geçerlidir" bölümünde listelenen Microsoft ürünlerinde sorun olduğunu doğrulamıştır.