Ne arayalım?

ARAMIZA KATILIN

BİZE ULAŞIN

Adres:

E-posta:

host/bin/bilisimlife.dll

iletisim@bilisimlife.net

SQL Server Shrink Işlemi 178178 okunma

09.08.2017

SQL Server

Rserit

SQL Server üzerindeki veritabanlarınız kullanıldıkça günler geçtikten sonra daha çok yer kaplamaya başlar. Bildiğini gibi sadece database değil log dosyası da onunla birlikte büyür. Öyle bir hal alır ki sunucuda çok yer kaplamaya başlar. Büyük küçük demeden, genellikle tüm sistemler için kullanılan shrink işlemi bu dosyaların boyutunu sıkıştırarak küçültüyor. Bilhassa log dosyalarını silmek yerine shrink işlemine tabii tutarlar.

Bildiğiniz gibi bir tabloyu delete ile sildiğiniz zaman MDF (veritabanı) dosyasının boyutunun azalmadığını hatta LDF (log) dosyasının boyutunun arttığını görürüz. Yapılan her işlem log olarak kaydedilir. Peki neden MDF küçülmedi? Bir veriyi silmeniz veritabanını küçültmez, çünkü database boyutu küçüldüğünde diskte kullandığı alanı düşürmez. Bunu database oluştururken görüyoruz. Shrink işlemi ile buraya müdahele edebiliriz, bu alanı ortadan kaldırarak boyutu küçültebiliriz.

Eğer Delete ile değil de Truncate ile silecek olsaydınız bu sefer Log tutmayacaktı, bunu da ayrı olarak not düşelim. 

Shrink işlemi için SQL Server Management Studio üzerinde giriş yapalım ve bir veritabanımızın üzerinde sağ tuş yapıp Tasks kısmından Shrink bölümüne gelelim. 
Karşımıza iki seçenek geliyor. Sadece database shrink olacaksa database, veritabanı dosyalarını da kapsayacaksa Files diyoruz. Şimdi database diyelim.




Shrink database kısmı karşımıza geliyor. 
Currently kısmı şu anda kapladığı alan, Available kısmı ise sıkıştırılabilir boyut.
Yani bu kısımda direk OK deyip işlem yaptırırsak available kısmındaki yer kadar boyut düşecek.
"Reorganize files before releasing unused space" kısmı ise bir shrink action, kullanılmayan alanı serbest bırakmadan dosyaları yeniden düzenlemenize olanak sağlar. Biraz performansa etkie edebilir ama daha iyi bir shrink işlemi sağlayabilir.

OK deyip işlemi başlatalım.



Şimdi de Files Shrink kısmına gelelim. Aynı şekilde veritabanına sağ tuş yapıp Tasks > Shrink > Files diyelim. Karşımıza bu sefer dosya grupları çıkmakta. 
File Type belirtmemiz gerekecek ve üç çeşit tür var: Data, Log ve Filestream. Her bir tür için shrink yapılabilir. 



Bilhassa log dosyalarında çok etkili. File Type kısmından Log seçelim ve ok diyelim.




Böylelikle database kısmında shrin işlemi nedir, ne değildir görmüş olduk. Bu işlem sürekli tekrarlanmamalı. Büyük veritabanlarında yapılması önerilmiyor.

Recep ŞERIT

BİR YORUM YAZIN


Bu makaleye yorum yapabilmeniz için üye olmanız veya üyeyseniz giriş yapmanız gerekir.