sp_syspolicy_delete_policy_execution_history(Transact-SQL)
적용 대상:SQL Server
정책 기반 관리에서 정책의 실행 기록을 삭제합니다. 이 저장 프로시저를 사용하여 특정 정책 또는 모든 정책에 대한 실행 기록을 삭제하고 특정 날짜 이전에 실행 기록을 삭제할 수 있습니다.
구문
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 datetime이며 필수입니다. NULL일 수 있습니다.
반환 코드 값
0
(성공) 또는 1
(실패).
설명
시스템 데이터베이스의 msdb
컨텍스트에서 실행 sp_syspolicy_delete_policy_execution_history
해야 합니다.
@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을 지정하면 다음 동작이 적용됩니다.
모든 정책 실행 기록을 삭제하려면 @policy_id 및 @oldest_date 모두에 대해 NULL을 지정합니다.
특정 정책에 대한 모든 정책 실행 기록을 삭제하려면 @policy_id 대한 정책 식별자를 지정하고 NULL을 @oldest_date 지정합니다.
특정 날짜 이전에 모든 정책에 대한 정책 실행 기록을 삭제하려면 @policy_id NULL을 지정하고 @oldest_date 날짜를 지정합니다.
정책 실행 기록을 보관하려면 개체 탐색기 정책 기록 로그를 열고 실행 기록을 파일로 내보낼 수 있습니다. 정책 기록 로그에 액세스하려면 관리를 확장하고 정책 관리를 마우스 오른쪽 단추로 클릭한 다음 기록 보기를 선택합니다.
사용 권한
Policy관리istratorRole 고정 데이터베이스 역할의 멤버 자격이 필요합니다.
Important
자격 증명 상승 가능: Policy관리istratorRole 역할의 사용자는 서버 트리거를 만들고 데이터베이스 엔진 인스턴스의 작업에 영향을 줄 수 있는 정책 실행을 예약할 수 있습니다. 예를 들어 Policy관리istratorRole 역할의 사용자는 대부분의 개체가 데이터베이스 엔진 만들어지는 것을 방지할 수 있는 정책을 만들 수 있습니다. 이러한 자격 증명 상승이 가능하기 때문에 정책관리istratorRole 역할은 데이터베이스 엔진 구성을 제어하는 신뢰할 수 있는 사용자에게만 부여되어야 합니다.
예제
다음 예제에서는 ID 7
가 있는 정책에 대한 특정 날짜 이전에 정책 실행 기록을 삭제합니다.
EXEC msdb.dbo.sp_syspolicy_delete_policy_execution_history
@policy_id = 7,
@oldest_date = '2019-02-16 16:00:00.000';
GO
관련 콘텐츠
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기