SQL Server 2008 R2 dizini yeniden oluşturma şiddeti 17 ile başarısız oluyor


12

Bazen dizin bakımı sırasında, yeniden oluşturduğu nesne için yeterli alan tahsis edilemeyen SEV 17 hatasıyla başarısız olur. Veritabanı şu şekilde düzenlenmiştir:

Data_file1    PRIMARY    0 growth         0% free                Max Size UNLIMITED
Data_file2    PRIMARY    0 growth         0% free                Max Size UNLIMITED
Data_file3    PRIMARY    0 growth         Less than 1% free      Max Size UNLIMITED
Data_file4    PRIMARY    250 MB growth    Less than 1% free      Max Size UNLIMITED

Esasen, 4 veri dosyasının 3'ü doludur ve büyümesine izin verilmez, dördüncüsü doludur ve büyümesine izin verilir. Dosyalar farklı LUN'lara yayılmıştır (ve neden dağınık olmasının nedeni). Çevrimiçi dizin yeniden oluşturma başladığında, herhangi bir ek alana ihtiyaç duyulursa, Data_file4'e dönüşecek ve iyi olacak, ancak görünüşe göre büyümeye izin verilmeyen ve başarısız olmayan farklı bir dosyaya büyümeye çalışıyor. Bu hatayı yeniden oluşturamıyorum, ancak bunun neden olduğuna dair bir fikir sahibi olup olmadığını merak ediyordum.

Tam SQL Server sürümü 2008 R2 Enterprise, SP2 CU 4'tür (10.50.4270). Ola Hallengren'in yeniden inşa senaryolarını kullanıyoruz, burada çevrimiçi olarak yeniden inşa ediyoruz, ancak tür yok tempdb.


Maksimum dosya boyutu belirtildi mi? Dokümanlar If max_size is not specified, the file size will increase until the disk is full., Otomatik büyüme kapalıysa, bu dosyalardan ayırmaya çalışmamaları gereken ( A value of 0 indicates that automatic growth is set to off and no additional space is allowed.) Verildi, ancak bir hata olabilir, bu nedenle ayarlanmadıysa denemeye zarar vermez.
Jon Seigel

max_size isşu anda 0 büyüme olanlarda bile SINIRSIZ olarak ayarlanmıştır. Bunu şu an repro testimde araştırıyorum.
Mike Fal

Sonuçları kaydediyor musunuz? Geçmiş kayıtları tutarsanız, hata her başarısız olduğunda aynı dizinde mi görülür?
Cougar9000

Söz konusu endeks kaç sayfa?
Mark Wilkinson

Ayrıca, bu komut dosyası tarafından oluşturulan bir hata mı yoksa gerçek bir SQL Server hatası mı? Ben bir veri dosya boyutu sınırı aksine, belki bir işlem günlüğü boyutu sınırı vurmak olup olmadığını merak ediyorum ve komut dosyası hatayı yanlış ele alıyor diye soruyorum.
Mark Wilkinson

Yanıtlar:


1

Benim deneyimim, her zaman dizinin yaşadığı dosya grubunda çevrimiçi yeniden oluşturma yapacak. Mevcut dizini eşlemeli ve esasen bir kopya için yeterli alana sahip olmalıdır.

Hatayı, yalnızca eşlemeleri (kopyayı) tutamayacak kadar büyük bir dizin yeniden oluşturulduğunda almanız gerekir; örneğin, Ola'nın komut dosyasında nitelendirilebilecek kadar bir kez parçalanmış olabilir ve bir dahaki sefere olmayabilir.

Dizinlerle ilgili disk alanı sorunlarıyla karşılaştığımda birkaç kez okumak zorunda kaldığım harika bir makale http://technet.microsoft.com/tr-tr/library/ms179542(v=sql.105).aspx var.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.