Not
Bu düzeltmeyi uyguladıktan sonra, bu düzeltmenin düzgün çalışması için 512 baytlık fiziksel kesim boyutu olan tüm sunucularda veya kopyalarda başlangıç parametresi olarak 1800 izleme bayrağını etkinleştirmelisiniz.
Belirtiler
Aşağıdaki senaryoyu inceleyin:
-
Microsoft SQL Server 'da AlwaysOn kullanılabilirlik gruplarını veya Logshipping özelliğini etkinleştirirsiniz.
-
Bir AlwaysOn kullanılabilirlik grubunda (AG) birincil ve ikincil çoğaltmanın günlük dosyalarını depolama disketlerinin farklı kesim boyutları vardır. Ya da Logshipping ortamlarından, günlük dosyalarını depolamak için günlük dosyalarını depolamak için kullanılan diskler farklı sektör boyutlarına sahiptir. Örneğin:
-
Birincil çoğaltma günlüğü dosyası, 512 baytlık kesim boyutuna sahip bir diskte bulunur. Bununla birlikte, ikincil çoğaltma günlük dosyası, 4 kilobayt (KB) kesim boyutu olan bir diskte bulunur.
-
Birincil çoğaltma günlüğü dosyası, 512 baytlık kesim boyutuna sahip bir şirket içi yerel sistemdir. Bununla birlikte, ikincil kopya, 4 kilobayt (KB) kesim boyutu olan bir Windows Azure depolama diskinde bulunur.
-
Bu senaryoda, SQL Server hata günlüğüne aşağıdaki hata iletisi kaydedilir. Sunucu yeniden başlatılmadan önce ikincil 'ye uygulanmamış Günlükler varsa, hata iletisi yeniden başlatıldığında devam edebilir.
X yanlış hizalanmış günlük IOs, eşzamanlı GÇ 'ye dönecek kadar gereklidir. Geçerli GÇ dosyada....
Ayrıca, eş zamanlı g/ç nedeniyle AG veya Logshipping eşitlemesi çok yavaş çalışıyor. İkincil çoğaltma Windows Azure Depolamasıysa, eşitleme işleminin tamamlanması beklenenden çok daha uzun sürer. Not Bu sorun, hem 4 KB 'lık kesime sahip hem de 512 baytlık kesim boyutu olan eski sürücüler kullanıldığında oluşur. Yeni sürücüler hakkında daha fazla bilgi için bkz: SQL Server-yeni sürücüler 4k sektörü boyutunu ve SQL Server 'ı (depolama alanları/VHDX ve 4k sektör boyutu) kullanır.
Çözüm
Sorun ilk olarak SQL Server 'ın aşağıdaki toplu güncelleştirmesinde giderilmiştir.
SQL Server 2014 için toplu güncelleştirme 5 /en-us/help/3011055
SQL Server 2012 SP2 için toplu güncelleştirme 3 /en-us/help/3002049
SQL Server 2012 SP1 için toplu güncelleştirme 13 /en-us/help/3002044
Düzeltmeyi uyguladıktan ve 1800 baytlık kesim 512 boyutu olan bir diskte çalışan tüm sunucular çoğaltmalarıyla başlangıç parametresi olarak 'i etkinleştirdikten sonra, aşağıdaki dosyaların boyutuyla küçük bir artış fark edebilirsiniz:
-
İşlem günlük dosyası
-
Günlük yedekleri
Ayrıca, birincil sunucunun SQL Server hata günlüğüne aşağıdaki iletilerin kaydedildiğini fark edebilirsiniz:
' <veritabanı adı> ' veritabanının günlüğü, 4096 baytlık yeni sektör boyutuna uyacak şekilde yeniden yazılmıştır
Bu, güvenle yoksayılacağı bir bilgi iletisidir.
Her bir SQL Server toplu güncelleştirmesi, önceki toplu güncelleştirmeyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. En son SQL Server güncelleştirmelerini görün:
Geçici Çözüm
Bu sorunu geçici olarak çözmek için, hedefteki işlem günlüğü dosyasını, 512 bayt olarak ayarlanmış fiziksel kesime sahip bir sürücüye taşıyın.
Durum
Microsoft bu sorunun "Aşağıdakilere Uygulanır" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.
Ek Bilgi
En iyi uygulama olarak, tüm kopyalarda tüm disklerde (günlük dosyalarını barındıran tüm disklerde) aynı sektör boyutuna sahip olduğundan emin olun. İkincil, 512 baytlık fiziksel kesime sahip olan ve birincili 'ın kesim boyutu 4 KB olduğunda, TF 1800, tüm sunucularda veya 512-byte fiziksel kesim boyutu olan çoğaltmalarda başlangıç bayrağı olarak kullanılmalıdır ve yeniden başlatılır . Bu, devam eden günlük oluşturma biçiminin 4 KB 'lik bir kesim boyutu kullandığından emin olur. SQL Server 'ın daha büyük kesim boyutlarıyla nasıl çalıştığı hakkında daha fazla bilgi için destek blogunda aşağıdaki gönderiyi inceleyin: SQL Server – depolama alanları/VHDX ve 4k kesim boyutuToplam fiziksel kesim değerini belirlemek için Fsutil komut istemi yardımcı programını kullanabilirsiniz. Bu parametre çıktıda görünmüyorsa, KB makalesi 982018' de belirtilen düzeltmeyi uygulamalısınız. Sahip olduğunuz sürücünün türünü doğrulamak için aşağıdaki adımları izleyin:
-
Yükseltilmiş komut isteminde aşağıdaki komutu çalıştırabilirsiniz:
Fsutil fsinfo ntfsınfo x: Not X yer tutucusu, denetleyen sürücüyü temsil eder.
-
Sahip olduğunuz sürücünün türünü belirlemek için, kesim ve fiziksel kesim başına bayt sayısı değerlerini kullanın. Bunu yapmak için aşağıdaki tabloyu kullanın:
"Kesim başına bayt" değeri
"Fiziksel kesim başına bayt" değeri
Sürücü türü
4096
4096
4K doğal
512
4096
Gelişmiş Biçim (512E olarak da bilinir)
512
512
512-baytlık yerel