sp_syspolicy_delete_policy_execution_history (Transact-SQL)
Область применения: SQL Server
Удаляет журнал выполнения для политик в управлении на основе политик. Эта хранимая процедура используется для удаления журнала выполнения для заданной политики или для всех политик, а также для удаления журнала выполнения до определенной даты.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_syspolicy_delete_policy_execution_history
[ @policy_id = ] policy_id
, [ @oldest_date = ] 'oldest_date'
[ ; ]
Аргументы
[ @policy_id = ] policy_id
Идентификатор политики, для которой требуется удалить журнал выполнения. @policy_id является int и является обязательным. Может иметь значение NULL
.
[ @oldest_date = ] 'oldest_date'
Самая старая дата, для которой требуется сохранить журнал выполнения политики. Все данные журнала выполнения до этой даты удаляются. @oldest_date — дата и требуется. Может иметь значение NULL
.
Значения кода возврата
0
(успешно) или 1
(сбой).
Замечания
Необходимо выполнить sp_syspolicy_delete_policy_execution_history
в контексте msdb
системной базы данных.
Чтобы получить значения для @policy_id и просмотреть даты журнала выполнения, можно использовать следующий запрос:
SELECT a.name AS N'policy_name',
b.policy_id,
b.start_date,
b.end_date
FROM msdb.dbo.syspolicy_policies AS a
INNER JOIN msdb.dbo.syspolicy_policy_execution_history AS b
ON a.policy_id = b.policy_id;
Следующее поведение применяется при указании NULL
одного или обоих значений:
Чтобы удалить весь журнал выполнения политики, укажите
NULL
как для @policy_id, так и для @oldest_date.Чтобы удалить весь журнал выполнения политики для определенной политики, укажите идентификатор политики для @policy_id и укажите
NULL
как @oldest_date.Чтобы удалить журнал выполнения политики для всех политик до определенной даты, укажите для @policy_id и укажите
NULL
дату @oldest_date.
Чтобы архивировать журнал выполнения политики, можно открыть журнал журнала политик в обозреватель объектов и экспортировать журнал выполнения в файл. Чтобы получить доступ к журналу журнала политик, разверните узел "Управление политиками", щелкните правой кнопкой мыши "Управление политиками" и выберите пункт "Просмотр журнала".
Разрешения
Требуется членство в предопределенной роли базы данных PolicyAdministratorRole .
Внимание
Возможное повышение прав учетных данных: пользователи в роли PolicyAdministratorRole могут создавать триггеры сервера и планировать выполнение политик, которые могут повлиять на работу экземпляра ядро СУБД. Например, пользователи роли PolicyAdministratorRole могут создавать политику, которая может препятствовать созданию большинства объектов в ядро СУБД. Из-за этого возможного повышения прав учетных данных роль PolicyAdministratorRole должна предоставляться только пользователям, которым доверено управление конфигурацией ядро СУБД.
Примеры
В следующем примере удаляется журнал выполнения политики до определенной даты для политики с идентификатором 7
.
EXEC msdb.dbo.sp_syspolicy_delete_policy_execution_history
@policy_id = 7,
@oldest_date = '2019-02-16 16:00:00.000';
GO