sp_delete_backuphistory (Transact-SQL)
适用于:SQL Server
通过删除早于指定日期的备份集条目,减小备份和还原历史记录表的大小。 执行每个备份或还原操作后,会向备份和还原历史记录表添加更多行;因此,建议定期执行 sp_delete_backuphistory
。
注意
备份和还原历史记录表驻留在 msdb
数据库中。
语法
sp_delete_backuphistory [ @oldest_date = ] oldest_date
[ ; ]
参数
[ @oldest_date = ] oldest_date
备份和还原历史记录表中保留的最早日期。 @oldest_date 为 日期/时间,没有默认值。
返回代码值
0
(成功)或 1
(失败)。
结果集
无。
注解
sp_delete_backuphistory
必须从 msdb
数据库运行并影响下表:
- backupfile
- backupfilegroup
- backupmediafamily
- backupmediaset
- backupset
- restorefile
- restorefilegroup
- restorehistory
即使所有历史记录都已被删除,物理备份文件也会保留下来。
权限
此存储过程由 db_owner 角色拥有。 你可以为任何用户授予 EXECUTE
权限,但这些权限可能会在 SQL Server 升级期间被重写。
示例
以下示例删除备份和还原历史记录表中早于 2023 年 1 月 14 日、12:00 的所有条目。
USE msdb;
GO
EXEC sp_delete_backuphistory @oldest_date = '2023-01-14';
GO