Deleting Log file di SQL Server 2005
Mencoba memasukkan hal2 yang rada penting biar dikata rada berkelas ni blog.. hueheheheh..
Barusan menghadapi hal yang unik, gw punya database di MSSQL Server 2005 yang bisa dibilang kecil lah, tapi yang bikin aneh, log file dari database tersebut gede banget. Untuk ilustrasi, database gw gedenya cuman 50 mega, nah itu log file gedenya ampe segiga.. Udah dapat dipastikan donk kalo banyak yang ga terpake di log file tersebut..
Untuk yang belom tau, ketika kita bikin database di SQL server, maka akan terbentuk dua jenis file, file tersebut adalah dabaseku.mdf dan databaseku_log.ldf. Akhiran ‘_log’ sebenarnya tidak wajib, hanya untuk memperlihatkan perbedaan saja. Nah file dengan ekstensi ".mdf" inilah tempat data kita, sedangkan file dengan ekstensi ".ldf" adalah tempat bersemayamnya backup, transaksi2 yang belum di commit dll.. nah file ini yang bsia berkembang menjadi besar banget kalo kita ga memanagenya..
Microsoft tidak mengajurkan mendelete langsung file log tersebut, terlebih lagi untuk database produksi, karena bisa jadi transaksi yang belum dicommit akan hilang dan tidak terlacak jejaknya, atau yang lebih parah lagi, database tersbut tidak bisa digunakan kembali.. Untuk mengurangi kemungkinan tersebut, maka kita bisa menggunakan command SHRINKFILE yang ada di MS SQL SERVER. Querynya sebagai berikut
USE databaseku;
GO
ALTER DATABASE databaseku
SET RECOVERY SIMPLE
GO
DBCC SHRINKFILE (databaseku_log, 1)
GO
ALTER DATABASE databaseku
SET RECOVERY FULL
GO
Query di atas akan "menyusutkan" file log kita menjadi satu megabytes, bila diinginkan ukuran lain angka "1" bisa diganti sesuai kebutuhan. Selamat mencoba..
nb: bila database elo emang setting recoverynya udah simple, maka sintaks yang alter database bisa diapus, baik yang pertama maupun yang kedua. Untuk ngecek mode recovery apa yang ada di database elo, klik kanan di database elo pada Management Studio -> properties -> Options nah liat dah tuh di bagian recovery model..
