交易日誌 (LDF) 長期未維護會暴增佔滿磁碟。本文提供工具一鍵縮減與「分離→刪除 LDF→重附加」兩種方案,並強調操作前必須完整備份。
USE master; -- 切換至簡單復原模式暫時截斷日誌 ALTER DATABASE YourDB SET RECOVERY SIMPLE; -- 縮減日誌檔至目標大小 (MB) DBCC SHRINKFILE (YourDB_log, 500); -- 恢復完整模式並立即做完整備份 ALTER DATABASE YourDB SET RECOVERY FULL; BACKUP DATABASE YourDB TO DISK = 'D:\Backup\YourDB_full.bak';
優點:線上操作、資料零風險。缺點:若日誌內含大量未截斷 VLF,可能無法縮減至預期大小。
YourDB_log.ldf 重命名為 YourDB_log.ldf.bak(或刪除,建議先備份)。YourDB.mdf → 底部日誌檔顯示「找不到」→ 移除該行 → 確定。風險提示: 若資料庫處於「恢復中」或有損壞頁面,附加會失敗;務必先跑 DBCC CHECKDB。
SELECT name, size/128.0 AS SizeMB FROM sys.master_files WHERE database_id = DB_ID('YourDB');
確認 LDF 大小已回落合理範圍。