Tempdb günlük dosyası için en iyi uygulama


11

Ben burada ve orada tempdb veri dosyalarını yapılandırma hakkında birçok blog okudum ama tempdb günlük dosyası ile ilgili herhangi bir bilgi bulamadık .

İşte benim tempdb ile şu anda kullandığım strateji:

  • Paul Randal'ın tempdb veri dosyalarımı nasıl böleceğime dair önerilerini kullandım
  • Tempdb veri dosyalarımın boyutunu maksimum ve devre dışı bırakılmış otomatik büyümeye ayarladım. Örneğin, 100 gb boş disk alanım var ve 8 tempdb veri dosyamın boyutunu 10 gb olarak ayarladım. Bu , Brent Ozar'ın önerdiği gibi diskte parçalanmayı önler ve ayrıca günlük dosyam için 20GB boş alanım var.

Ama dediğim gibi, hiç kimse tempdb günlük dosyası hakkında konuşmuyor . Ben onunla ne yapmalıyım? Kurulumumda, bu dosya tempdb veri dosyalarıyla aynı yerde. Tempdb günlük dosyasıyla kullanmam gereken boyut ve otomatik büyüme değeri nedir?


4
Bunun için bir sihirli cevap yoktur, ben olacağını hariç değil kesinlikle sistem gerekli otomatik büyüme olmalıdır durma noktasına gelmek istiyorum sürece Tempdb veri için devre dışı Autogrowth veya giriş yapın. Herhangi bir dosyada otomatik büyümeyi hiçbir zaman devre dışı bırakmam, çünkü ne kadar iyi planlasanız da, her zaman anormal durumlar vardır.
Aaron Bertrand

2
@AaronBertrand: tam boyutlu tempdb'de otomatik büyümeyi etkinleştirmek yardımcı olmaz. Onlar zaten maksimum olabilir sürücüde olabilir. Yine de kullanabilecekleri daha fazla disk alanı yok. Bu yüzden otomatik büyümeyi devre dışı bıraktım.
Alexandre Jobin

2
O zaman devre dışı olup olmadığı önemli değil, değil mi? Otomatik büyüme gerekiyorsa, her iki şekilde de başarısız olur. Etkinleştirirseniz, belki de daha büyük bir sürücüye taşımanız gerektiğini fark ettiğinizde değiştirmeniz gereken daha az şeydir.
Aaron Bertrand

1
PS 8 x 20> 100
Aaron Bertrand

1
Dosyalarınızı bölmek mutlaka "iyi bir kurulum" değildir. Donanım yapılandırmanıza bağlıdır; ki bunlar sizin vermediniz.
Paul

Yanıtlar:


5

Gerçekten, işlem günlüğünden ne kadar verinin akacağına bağlıdır. Günlüğün bugün ne kadar büyük olduğuna bakın. SQL başlatıldığında günlüğü en az bu boyutta yapılandırmanız gerekir. Müşterilerimin çoğu için, sadece birkaç VLF içeren tempdb için 3-4 Gig işlem günlüğü ile sonuçlanıyor ve her şey güzel ve sorunsuz çalışıyor.


0

Donanımınız verilere aynı anda yazabiliyor ve aynı anda performansı artırabiliyorsa günlük dosyaları ayrı bir fiziksel / disk dizisinde saklamam söylendi. 20G tempdb limitinizi ortaya çıkaran sınırlamanın boyut için bir cevap tanımlayabileceğini tahmin ediyorum. Otomatik büyüme için, çalıştırdığınız işlemlerin yanı sıra kullanılabilir boş alana ve diskteki diğer kaynaklara bağlı olabilir. Genellikle başlangıç ​​boyutunun 1 / 6'sını keyfi olarak seçerim.


0

Aaron doğru yapılandırmak TempDB anlık görüntü yalıtım vb kullanmayı planlıyor olsun veya olmasın gibi çok sayıda değişkene bağlıdır. İşte MS / TN eski bir SQL 2005 beyaz kağıt hala iyi bir bit hala geçerli olduğundan size yardımcı olabilir. Özellikle "tempdb günlüğü için gereken alan" a bakın, böylece tempdb günlüğüne ne tür işlemlerin günlüğe kaydedildiğini görebilirsiniz, böylece işleri buna göre ayarlayabilirsiniz. Muhtemelen zaman içinde izlemeniz ve ayarlamanız gerekecek bir şey olacaktır.

Ben tempdb için authogrowth kadar bu geçmişte bir raporlama sunucusunda isteksizce devre dışı bıraktığım ve yaşadığım davranış, uzun süre devam eden işlem iptal ve geri alan günlük alanı serbest bırakıldı neden oldu ama bu bağlı olabilir benim durumumda büyük işlem ve birleştirme işlemleri (kötü yazılmış rapor sorguları) olan işlem türü. Aaron'a katılıyorum ve özellikle yüksek işlem hacminde bu durumdan kaçınmanızı tavsiye ederim.

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.