MS SQL Server Database Auto Growth
Sql Server tarafında, Auto Growth özelliği ile veri tabanı dosyaları için otomatik büyüme işlemleri yapılabilir. Bu büyütme işlemi boyu ve oran kullanılarak yapılır.
Aynı zamanda ilgili dosyaların en fazla hangi boyuta kadar büyüyeceğine ya da limitsiz olarak büyüyebileceğine yine karar verebilirsiniz.
Auto Growth özelliğini kullanabilmek için;
İlgili veri tabanı üzerinde sağ tıklayıp özelliklerine bakmalıyız. Daha sonra Files alanına gelip buradan ayarlarını yapabiliriz.
Enable autogrowth seçeneğini işaretleyip Auto Growth özelliğini devreye alabilir ya da işareti kaldırıp ilgili özelliği iptal edebiliriz.
Auto Growth, boyutsal olarak default 1 mb, oran olarak %10 olarak büyümektedir. Bu oranı değiştirerek de ilgili özelliği yine kullanabilirsiniz.
Maximum File Size alanından ise veri tabanı için maximum bir boyut belirleyebilir ya da unlimited seçeneği ile limitsiz bırakabilirsiniz. Unlimited seçeneği seçilir ise buradaki limit disk boyutu olacaktır.
Auto Growth, disk üzerinde yeni bir alan oluşturacağı için sql server için zahmetli ve performans tüketen bir uygulamadır. Yani ihtiyaç halinde disk üzerinde boyutlandırma yapılacağı için, işlemin tamamlanması için geçen süre boyunca okuma-yazma istekleri bekletilecek bu süre zarfında min de olsa performans sorunu oluşacaktır.
Auto Growth kullanılmak istendiğinde Boyut kavramını mı kullanalım yoksa Oran kavramını mı?
Genelde oransal olarak büyüme yapılmaz. Bunun nedeni büyük boyutlu dosyalarda oransal büyüme performans problemleri yaratacaktır. Örneğin dosyanın boyutunun 10 GB olduğunu varsayalım. Otomatik büyüme %10 olduğu için anlık 1 GB büyüme sağlamaya çalışılacaktır. 100 GB olduğunda %10 10 GB olacak ki bu performans sorunlarını getirecektir.
Bunun yerine boyutsal bir değer ile kullanmak daha doğru olacaktır. Burada da farklı değerler ve öneriler olmasına rağmen genel kanı 512 MB- 1 GB gibi değerlerin kullanılmasıdır.
Auto Growth değerini nasıl değiştirebilirim?
T-sql ile ;
ALTER DATABASE [ZIYARET] MODIFY FILE (NAME = N'ZIYARET_Data', FILEGROWTH = 1024000 KB)
Sql Server Management Studio ile;
Eğer veri tabanı için Toplam Autogrowth olay sayısını görmek isterseniz aşağıdaki gibi ilgili olaylara bakabilirsiniz.
Disk üzerinde sağ tık – Reports – Standart Reports – Disk Usage tıklayarak ilgili görsele ulaşabiliriz.