SQL Log Dosyası Küçült – SQL Log Shrink

SQL Log Dosyası Küçült – SQL Log Shrink

30 Ağustos 2019 0 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 21
Yaklaşık okuma süresi : 3 DK
SQL DateTime Convert ve Datetime Veri Tipleri
SQL AdventureWorks 2012 Örnek Database

SQL Log Dosyası Küçült – SQL Log Shrink dersim ile SQL eğitim setime bir daha ekliyorum. Bu dersimizde SQL ‘de Database’lerimizin aşırı büyüyen log dosyalarını küçültmenin yollarına bakacağız.

SQL Log Dosyası Küçült – SQL Log Shrink

Bu dersimde aşırı şişen log database dosyalarımızın boyutların küçültmeyi göreceğiz. Yani içlerini boşaltacağız.

Bu konuya bugün C diskimde yer kalmadığı için ihtiyacım oldu. Bilgisayarımda onlarca database olduğundan dolayı database dosyalarımı da kontrol etmek istedim ve gördüklerime çok şaşırdım. Çünkü 15GB ‘ye ulaşan log dosyaları vardı. Bu yüzden bende bu log dosyalarını küçülteyim dedim.

Advertisements

Şimdi bu işlemi yapmak için toplamda 3 yolumuz var. Bu derste bu üç yoluda vereceğim.

 

1 – LOG Dosyasını Silmek

Öncelikle SQL Server Management Studio üzerinden Object Explorer’ ı kullanarak database ‘i Detach edeceğiz.

Database üzerinde sağ tık yaptıktan sonra Task >> Detach diyoruz.

Sonrasında DataBase’in yer aldığı klasörü açıyoruz. Genelde yolu

C:\Program Files\Microsoft SQL Server\MSSQL12.SQL2014\MSSQL\DATA

şeklinde olur. Burada Detach ettiğimiz database’e ait log dosyasını delete ile silin. Log dosyasını sildikten sonra SQL Server Management Studio üzerinden Object Explorer’ ı kullanarak database ‘i tekrar attach edeceğiz. Ancak burada dikkat etmemiz gereken bir şey var.

LOG Dosyasını Silmek

yukarıdaki ekranda alttaki log dosyasını seçiyoruz ve Remove diyoruz. OK dediğimizde Log dosyası olmadan attach ediyoruz ve SQL Server log dosyasını otomatik oluşturuyor.

NOT: Bu işlem genelde yeni bir database attach edeceğimiz zamanlarda kullanırız. Log dosyası çok büyük ise log dosyasını almadan attach ederiz.

 

İlgili İçerik  SQL Union All Komutu - Sorguları Birleştirme

 

2 – Kod ile Shrink Yapmak

Shrink yani küçültme işlemini kod ile de yapabiliriz. Aşağıdaki kodlar ile shrink işlemini yapabiliyoruz.

ALTER DATABASE DATABASE_NAME
        SET RECOVERY SIMPLE
        GO
        DBCC SHRINKFILE (DATABASE_NAME_log, 1)
        GO
        ALTER DATABASE DATABASE_NAME
        SET RECOVERY FULL

Burada dikkat etmemiz gereken nokta ise

DBCC SHRINKFILE (DATABASE_NAME_log, 1)

kısmıdır. Buraya yazmanız gereken isimi

Database üzerinde sağ tık >> Özellikler >> Sol Kısımdan Files ‘a geliyoruz ve Database Files: listesinde; log dosyamızın Logical Name kısmında yazan ad olmalıdır.

 

 

3 – TASK Üzerinden Shrink Yapmak

En kolay işlem budur. Genelde de bu yöntem kullanılır. Kolay olduğu için en sona koymak istedim.

Database üzerinde Sağ Tık >> TASK >> Shrink >> Files yoluna gidiyoruz. Açılan ekranda File Type kısmından Log ‘u seçiyoruz ve OK diyoruz. Bu şekilde Shrink işlemimizi tamamlıyoruz.

TASK Üzerinden Shrink Yapmak

TASK Üzerinden Shrink Yapma 2

 


 

SQL Log Dosyası Küçült – SQL Log Shrink yazımda bu kadar arkadaşlar diğer derslerimizde görüşmek üzere…

Microsoft SQL Server & T-SQL Eğitim Seti ders listesi için tıklayınız.

Sağlıcakla ve Takipte Kalın. 😉

SQL DateTime Convert ve Datetime Veri Tipleri
SQL AdventureWorks 2012 Örnek Database