1. Ana Sayfa
  2. SQL Server
  3. SQL Server Database Auto Growth (Otomatik Büyüme) İşlemi Nasıl Yapılır?

SQL Server Database Auto Growth (Otomatik Büyüme) İşlemi Nasıl Yapılır?

SQL Server’da bulunan Auto Growth (Otomatik Büyüme) özelliği ile veritabanı dosyaları limitlerine ulaştıklarında sistem otomatik olarak (ya da sizin belirttiğiniz ölçekte) büyütülme işlemini gerçekleştirmektedir. Bu büyüme oransal ya da boyutsal olarak daha önceden sizin tarafınızdan belirlenebilir. Aynı zamanda dosyaların en fazla hangi boyuta kadar büyüyebileceği de kendiniz ayarlayabilirsiniz.

Bu işlem için Veritabanı üzerinde sağ tıklayıp properties -> Files bölümünden aşağıdaki gibi görüntülenebilir ve değişiklikler yapılabilir.


Resim-1

Auto Growth işlemi diskte yeni bir alan allocate edilmesinden dolayı kaynak tüketimi fazla olan bir operasyondur. Büyümenin boyutlarına göre bazı durumlarda bu büyüme işlemi 1-5 saniye arasında sürebilir. Büyüme tamamlanana kadar da ilgili dosyaya gelen okuma ve yazma istekleri bekletilecek bu da performans sıkıntısı olarak dönecektir.

Sistemin en az yoğun olduğu saatlerde dosyalar yeteri kadar büyütülürse sistemin yoğun olduğu zamanlarda büyüme ihtiyacı ortaya çıkmayacak dolayısıyla performans sıkıntısı oluşmayacaktır.

Her ne kadar büyümeler DBA’ler tarafından yapılsa da plansız büyümelere karşı yine de Auto Growth özelliğinin açık olması önerilir.

Büyümelerin default değeri data dosyası için 1MB, log dosyaları için %10‘dur. Değeri default haliyle bırakmak çoğu durumda performans sıkıntısı doğurmaktadır.

Peki bu değerleri kaç olarak ayarlamalıyız?

Kesinlikle büyüme oranın % şeklinde kalmaması gerekmektedir. Bunun sebebi; düşük boyutlu dosyalarda sürekli Auto Growth yapma ihtiyacı doğacakken büyük boyutlu dosyalarda da tek seferde çok fazla büyüme yapılma ihtimalidir.

Örneğin dosyanız şu anda 10MB ve Auto Growth değeri %10 ise büyümeler 1MB‘lık bloklar şeklinde yapılacak ve sürekli büyüme ihtiyacı ortaya çıkacaktır.

Tam tersini düşündüğümüzde yani dosyanın boyutunun 100GB olduğunu düşündüğümüzde, bu durumda da her büyüme için 10 GB‘lık dosya allocate edilmeye çalışılacak. Bu da uzun sürecektir.

Yüzdesel büyüme değerleri vermektense sabit değerler vermeliyiz. Peki bu sabit değer ne olmalı? 10MB, 100MB, 1GB, 10 GB gibi değerler mi olmalı ? Best practice Auto Growth değerinin 1GB’dan büyük set edilmemesidir  ve ben kendi ortamlarında data dosyaları için 1024MB ya da 512MB log dosyaları için de512MB ya da 256MB set etmekteyim. Siz de bu değerleri gönül rahatlığıyla kullanabilirsiniz.

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar

www.mshowto.org

Yorum Yap

Yazar Hakkında

Milenyumdan beri ilginç bir merak duygusu ile başlayan bilgisayar ve teknoloji dünyası merakı sayesinde eğitim yaşantımı doğup büyüdüğüm Düzce'de geçirdim. Sonrasında Düzce'nin kendimi geliştirmek adına yeterli imkanlara sahip olmadığından İstanbul'a gelip Bilge Adam Eğitim Kurumlarından Yazılım ve Veritabanı eğitimi aldım. Eğitimimi tamamlarken çeşitli Windows ve Web uygulamaları geliştirdim. Sırası ile Sentez Yazılım, Nebim Yazılım, Ciceksepeti, Doğan Holding, Kariyer.Net, TurkNet gibi firmalarında Yönetici / Müdür pozisyonlarında farklı ünvanlarda ( Yazılım Geliştirici / Raporlama ve Veritabanı Yöneticisi gibi) görev aldım. Şimdilerde ise DMC Bilgi Teknolojileri firmasının Kurucu Ortaklığını ve Veritabanı Danışmalığı Hizmeti vermekteyim.

Yorum Yap