Cách giảm dung lượng file Log trong SQL Server
by My Love
03/04/2020, 2:50 PM | 03/04/2020, 2:50 PM | 1.6K | 010104
File Log trong Sql Server có tác dụng lưu các Transaction, nó rất hữu dụng trong các trường hợp cơ sở dữ liệu gặp sự cố cần khôi phục lại thời điểm trước đó. Chính vì thực hiện lưu nhiều transaction nên dung lượng file log có thể sẽ rất lớn, lúc này nếu cần giảm dung lượng file này bạn có thể thực hiện theo cách sau:
1. Giảm dung lượng File log
Ví dụ mình có database tên là
CNTT
, trong thư mục lưu trữ sẽ có 2 file là
CNTT.mdf
và
CNTT_log.ldf
- Lúc này chỉ cần chạy câu truy vấn sau trong SQL :
USE CNTT;
GO
-- Truncate the log by changing the database recovery model to SIMPLE.
ALTER DATABASE CNTT
SET RECOVERY SIMPLE;
GO
-- Shrink the truncated log file to 1 Mb.
DBCC SHRINKFILE (CNTT_log, 1);
GO
-- Reset the database recovery model.
ALTER DATABASE CNTT
SET RECOVERY FULL;
GO
- Các câu lệnh trên có tác dụng :
SET RECOVERY của database về
SIMPLE, Dùng
DBCC SHRINKFILE để
SHRINK file log xuống còn 1 Mb, sau đó lại
SET RECOVERY về
FULL
2. Lỗi Could not locate file 'xxx_log' for database 'xxx' in sys.database_files. The file either does not exist, or was dropped
Trong quá trình thực hiện có thể gặp lỗi trên, bạn chỉ cần xem lại tên file log có đúng là
CNTT_log
không. Click phải chuột vào Database
CNTT => Properties => Files =>
Xem trong mục
Logical Name
có đúng là
CNTT_log không ?
- Nếu không đúng bạn đặt lại tên rồi thực hiện chạy lại câu lệnh trên sẽ hết lỗi.