sp_syspolicy_set_config_history_retention (Transact-SQL)

适用范围:SQL Server

指定为基于策略的管理而保留策略评估历史记录的天数。

Transact-SQL 语法约定

语法

sp_syspolicy_set_config_history_retention
    [ @value = ] value
[ ; ]

参数

[ @value = ] value

保留基于策略的管理历史记录的天数。 @valuesqlvariant

返回代码值

0(成功)或 1(失败)。

注解

必须在系统数据库的上下文msdb中运行sp_syspolicy_set_config_history_retention

如果 @value 设置为 0,则不会自动删除历史记录。

若要查看历史记录保持期的当前值,请运行以下查询:

SELECT current_value
FROM msdb.dbo.syspolicy_configuration
WHERE name = 'HistoryRetentionInDays';

权限

需要 PolicyAdministratorRole 固定数据库角色的成员身份。

重要

可能的凭据提升:PolicyAdministratorRole 角色中的用户可以创建服务器触发器和计划策略执行,这些触发器可能会影响数据库引擎实例的操作。 例如,PolicyAdministratorRole 角色中的用户可以创建一个策略,以防止在数据库引擎中创建大多数对象。 由于这种可能的凭据提升,PolicyAdministratorRole 角色应仅授予信任控制数据库引擎配置的用户。

示例

下面的示例将策略评估历史记录保持期设置为 28 天。

EXEC msdb.dbo.sp_syspolicy_set_config_history_retention @value = 28;
GO