Cắt log SQL Server (Shrink SQL Server Transaction Log File)

Log file của SQL Server là gì?

Log file của SQL Server là file lưu lại các nhật ký giao dịch của SQL Server, các thao tác xử lý dữ liệu như Update, delete sẽ được lưu file log (file có phần mở rộng là .ldf).

Vậy tại sao phải cắt log ?

Vì theo thời gian thì file log sẽ tăng lên rất lớn nếu server không có hệ thống backup thường xuyên, đặc biệt là backup log.

Có 2 cách cắt log:

Cách 1: sử dụng lệnh T-SQL:

-- thay thế databaseName bằng tên database của bạn
USE databaseName
GO
ALTER DATABASE databaseName SET RECOVERY SIMPLE
GO
DECLARE @Name SYSNAME, @DBNAME VARCHAR(100)
SELECT @Name = name FROM sys.master_files WHERE database_id = DB_ID() AND type = 1
SET @DBNAME = DB_NAME()
DBCC SHRINKFILE (@Name, 0, TRUNCATEONLY)
GO

Cách 2: Sử dụng giao diện công cụ SQL Server Management Studio.

Bước 1
Chuyển Recovery Model sang mode Simple nếu chưa ở mode này.

Shrink-log-simple

Bước 2:

Thực hiện cắt log.

shrink the transaction log

Chọn
– File type: log
– File Name: để mặc định, nếu có nhiều file log thì chọn lại file này.

shrink the transaction log

Sau khi nhấn OK, thao tác cắt log đã thành công.

Video hướng dẫn chi tiết: