首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 交易記錄檔過大處理:DUMP TRANSACTION 與收縮實務

     編輯:關於SqlServer

快速處理步驟

  1. 在查詢分析器執行:
    DUMP TRANSACTION DatabaseName WITH NO_LOG
  2. 在企業管理器右鍵資料庫 → 所有工作 → 收縮資料庫 → 選擇「釋放未使用空間」或「移動頁面到檔案開頭」。

預防記錄暴增

  • 建立維護計畫,定期備份交易記錄(BACKUP LOG)。
  • 依業務需求設定復原模式:
    FULL(完整備份+記錄備份)、BULK_LOGGED(大量作業最小記錄)、SIMPLE(自動截斷,不支援時間點還原)。
  • 監控記錄檔使用率(DBCC SQLPERF(LOGSPACE)),設定警示。

注意事項

  • DUMP TRANSACTION ... WITH NO_LOG 在 SQL Server 2005+ 已移除,改用 BACKUP LOG ... WITH TRUNCATE_ONLY(同樣已棄用),建議直接切換至 SIMPLE 模式再切回 FULL 並立即完整備份。
  • 收縮資料檔 (DBCC SHRINKFILE) 會造成索引碎片,收縮後需重建索引。
  • 生產環境嚴禁長期使用 NO_LOG/TRUNCATE_ONLY,會破壞備份鏈導致無法時間點還原。

妥善規劃備份策略與復原模式,是控制交易記錄檔大小的根本之道。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved