sp_syspolicy_delete_policy_execution_history (Transact-SQL)
Aplica-se: SQL Server
Exclui o histórico de execução de políticas no Gerenciamento Baseado em Políticas. Você pode usar este procedimento armazenado para excluir o histórico de execução de uma política específica ou de todas as políticas e excluir o histórico de execução antes de uma data específica.
Convenções de sintaxe de Transact-SQL
Sintaxe
sp_syspolicy_delete_policy_execution_history
[ @policy_id = ] policy_id
, [ @oldest_date = ] 'oldest_date'
[ ; ]
Argumentos
@policy_id [ = ] policy_id
O identificador da política para a qual você deseja excluir o histórico de execução. @policy_id é int e é necessário. Pode ser NULL
.
@oldest_date [ = ] 'oldest_date'
A data mais antiga para a qual você deseja manter o histórico de execução de políticas. Qualquer histórico de execução anterior a essa data será excluído. @oldest_date é datetime e é obrigatório. Pode ser NULL
.
Valores do código de retorno
0
(sucesso) ou 1
(falha).
Comentários
Você deve executar sp_syspolicy_delete_policy_execution_history
no contexto do banco de dados do msdb
sistema.
Para obter valores para @policy_id e exibir datas do histórico de execução, você pode usar a seguinte consulta:
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;
O comportamento a seguir se aplica se você especificar NULL
para um ou ambos os valores:
Para excluir todo o histórico de execução de políticas, especifique
NULL
para @policy_id e para @oldest_date.Para excluir todo o histórico de execução de uma política específica, especifique um identificador de política para @policy_id e especifique
NULL
como @oldest_date.Para excluir o histórico de execução de políticas para todas as políticas antes de uma data específica, especifique
NULL
para @policy_id e especifique uma data para @oldest_date.
Para arquivar o histórico de execução de políticas, você pode abrir o log do Histórico de Políticas, no Pesquisador de Objetos, e exportar o histórico de execução para um arquivo. Para acessar o log do Histórico de Políticas, expanda Gerenciamento, clique com o botão direito do mouse em Gerenciamento de Políticas e selecione Exibir Histórico.
Permissões
Requer associação na função de banco de dados fixa PolicyAdministratorRole .
Importante
Possível elevação de credenciais: os usuários na função PolicyAdministratorRole podem criar gatilhos de servidor e agendar execuções de política que podem afetar a operação da instância do Mecanismo de Banco de Dados. Por exemplo, os usuários na função PolicyAdministratorRole podem criar uma política que pode impedir que a maioria dos objetos seja criada no Mecanismo de Banco de Dados. Devido a essa possível elevação de credenciais, a função PolicyAdministratorRole deve ser concedida somente a usuários confiáveis para controlar a configuração do Mecanismo de Banco de Dados.
Exemplos
O exemplo a seguir exclui o histórico de execução de políticas antes de uma data específica para uma política com uma ID de 7
.
EXEC msdb.dbo.sp_syspolicy_delete_policy_execution_history
@policy_id = 7,
@oldest_date = '2019-02-16 16:00:00.000';
GO