Partilhar via


sp_syspolicy_delete_policy_execution_history (Transact-SQL)

Exclui o histórico de execução de políticas no Gerenciamento Baseado em Política. 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.

Ícone de vínculo de tópicoConvenções de sintaxe 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 cujo histórico de execução você deseja excluir. policy_id é int e deve ser especificado. 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ítica. Qualquer histórico de execução anterior a esta data será excluído. oldest_date é datetime e deve ser definido. Pode ser NULL.

Valores do código de retorno

0 (êxito) ou 1 (falha)

Comentários

Você deve executar sp_syspolicy_delete_policy_execution_history no contexto do banco de dados de sistema msdb.

Para obter valores para policy_id e exibir as datas de 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 será aplicado se você especificar NULL para obter um ou ambos valores:

  • Para excluir todo o histórico de execução de política, especifique NULL para policy_id e 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 todas as políticas anteriores a 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ítica, você pode abrir o log Histórico de Política no Pesquisador de Objetos e exportar o histórico de execução para um arquivo. Para acessar o log Histórico de Política, expanda Gerenciamento, clique com o botão direito em Gerenciamento de Políticas e clique em Exibir Histórico.

Permissões

Requer a associação à função de banco de dados fixa PolicyAdministratorRole.

Observação sobre segurançaObservação sobre segurança

Possível elevação de credenciais: os usuários na função PolicyAdministratorRole podem criar gatilhos de servidor e agendar execuções de políticas que possam afetar a operação da instância do Mecanismo de Banco de Dados. Por exemplo, os usuários da função PolicyAdministratorRole podem criar uma política que impeça a criação da maioria dos objetos no Mecanismo de Banco de Dados. Devido a essa possível elevação de credenciais, a função PolicyAdministratorRole deve ser concedida somente aos usuários que sejam confiáveis no controle da configuração do Mecanismo de Banco de Dados.

Exemplos

O exemplo seguinte exclui o histórico de execução de política anterior a uma data específica de uma política com ID 7.

EXEC msdb.dbo.sp_syspolicy_delete_policy_execution_history @policy_id = 7
, @oldest_date = '2009-02-16 16:00:00.000';

GO