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

SQL Server 刪除備份/還原歷史記錄:sp_delete_backuphistory 完整語法與實戰範例

     編輯:關於SqlServer

sp_delete_backuphistory 可清理 msdb 中備份/還原歷史表,釋放空間、提升查詢效能。本文提供官方語法、參數說明、權限需求與實戰範例。

語法

sp_delete_backuphistory [ @oldest_date = ] 'oldest_date'

參數

  • @oldest_date (datetime, 無預設):**保留此日期之後**的記錄;早於此日期的備份集、還原記錄、檔案記錄將被刪除。

返回碼

  • 0 成功
  • 1 失敗

執行環境與權限

  • 必須在 msdb 資料庫執行。
  • 預設授予 sysadmin 固定伺服器角色;可授權給其他登入。

實戰範例

USE msdb;
GO
-- 刪除 2008-05-20 12:00 之前的所有歷史
EXEC sp_delete_backuphistory '2008-05-20 12:00:00';
-- 或僅保留最近 30 天
DECLARE @cutoff DATETIME = DATEADD(DAY, -30, GETDATE());
EXEC sp_delete_backuphistory @cutoff;

最佳實務

  1. 納入每週/每月維護計畫 (Maintenance Plan) 自動執行。
  2. 刪除前確認備份檔案已異地歸檔,避免誤刪仍需還原的歷史。
  3. 大量歷史刪除可能產生大量記錄,建議離峰時段執行,並監控 msdb 交易記錄增長。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved