sp_syspolicy_purge_history (Transact-SQL)
适用范围:SQL Server
根据历史记录保持期间隔设置,删除策略评估历史记录。
语法
sp_syspolicy_purge_history
[ ; ]
参数
该存储过程没有参数。
返回代码值
0
(成功)或 1
(失败)。
注解
必须在系统数据库的上下文msdb
中运行sp_syspolicy_purge_history
。
若要查看历史记录保持期间隔,可以使用以下查询:
SELECT current_value
FROM msdb.dbo.syspolicy_configuration
WHERE name = N'HistoryRetentionInDays';
GO
如果历史记录保留间隔设置为 0
,则不会删除策略评估历史记录。
权限
需要 PolicyAdministratorRole 固定数据库角色的成员身份。
重要
可能的凭据提升:PolicyAdministratorRole 角色中的用户可以创建服务器触发器和计划策略执行,这些触发器可能会影响数据库引擎实例的操作。 例如,PolicyAdministratorRole 角色中的用户可以创建一个策略,以防止在数据库引擎中创建大多数对象。 由于这种可能的凭据提升,PolicyAdministratorRole 角色应仅授予信任控制数据库引擎配置的用户。
示例
下面的示例将删除策略评估历史记录。
EXEC msdb.dbo.sp_syspolicy_purge_history;
GO