sp_delete_jobsteplog(Transact-SQL)
적용 대상: SQL Server Azure SQL Managed Instance
인수로 지정된 모든 SQL Server 에이전트 작업 단계 로그를 제거합니다. 데이터베이스에서 sysjobstepslogs 테이블을 유지 관리하려면 이 저장 프로시저를 msdb
사용합니다.
구문
sp_delete_jobsteplog
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
[ , [ @step_id = ] step_id ]
[ , [ @step_name = ] N'step_name' ]
[ , [ @older_than = ] older_than ]
[ , [ @larger_than = ] larger_than ]
[ ; ]
인수
[ @job_id = ] 'job_id'
제거할 작업 단계 로그가 포함된 작업의 작업 ID 번호입니다. @job_id 기본값NULL
인 uniqueidentifier입니다.
@job_id 또는 @job_name 지정해야 하지만 둘 다 지정할 수는 없습니다.
[ @job_name = ] N'job_name'
작업의 이름입니다. @job_name sysname이며 기본값은 .입니다NULL
.
@job_id 또는 @job_name 지정해야 하지만 둘 다 지정할 수는 없습니다.
[ @step_id = ] step_id
작업 단계 로그를 삭제할 작업의 단계 ID입니다. @step_id 기본값NULL
인 int입니다. 포함되지 않은 경우 @older_than 또는 @larger_than 지정하지 않으면 작업의 모든 작업 단계 로그가 삭제됩니다.
@step_id 또는 @step_name 지정할 수 있지만 둘 다 지정할 수는 없습니다.
[ @step_name = ] N'step_name'
작업 단계 로그를 삭제할 작업의 단계 이름입니다. @step_name 기본값NULL
인 sysname입니다.
@step_id 또는 @step_name 지정할 수 있지만 둘 다 지정할 수는 없습니다.
[ @older_than = ] older_than
유지하려는 가장 오래된 작업 단계 로그의 날짜 및 시간입니다. @older_than 기본값NULL
인 datetime입니다. 이 날짜 및 시간보다 오래된 모든 작업 단계 로그가 제거됩니다.
@older_than 및 @larger_than 모두 지정할 수 있습니다.
[ @larger_than = ] larger_than
유지하려는 가장 큰 작업 단계 로그의 크기(바이트)입니다. @larger_than 기본값NULL
인 int입니다. 이 크기보다 큰 모든 작업 단계 로그는 제거됩니다.
@older_than 및 @larger_than 모두 지정할 수 있습니다.
반환 코드 값
0
(성공) 또는 1
(실패).
결과 집합
없음.
설명
sp_delete_jobsteplog
가 데이터베이스에 있습니다 msdb
.
@job_id 또는 @job_name 제외한 인수를 지정하지 않으면 지정된 작업에 대한 모든 작업 단계 로그가 삭제됩니다.
사용 권한
이 절차에 대한 사용 권한을 부여 EXECUTE
할 수 있지만 SQL Server 업그레이드 중에 이러한 권한이 재정의될 수 있습니다.
다른 사용자에게는 데이터베이스에서 다음 SQL Server 에이전트 고정 데이터베이스 역할 msdb
중 하나가 부여되어야 합니다.
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
이러한 역할의 사용 권한에 대한 자세한 내용은 SQL Server 에이전트 고정 데이터베이스 역할을 참조하세요.
sysadmin의 멤버만 다른 사용자가 소유한 작업 단계 로그를 삭제할 수 있습니다.
예제
A. 작업에서 모든 작업 단계 로그 제거
다음 예제에서는 작업에 대한 모든 작업 단계 로그를 Weekly Sales Data Backup
제거합니다.
USE msdb;
GO
EXEC dbo.sp_delete_jobsteplog
@job_name = N'Weekly Sales Data Backup';
GO
B. 특정 작업 단계에 대한 작업 단계 로그 제거
다음 예에서는 작업 Weekly Sales Data Backup
의 2단계에 대한 작업 단계 로그를 제거합니다.
USE msdb;
GO
EXEC dbo.sp_delete_jobsteplog
@job_name = N'Weekly Sales Data Backup',
@step_id = 2;
GO
C. 연령 및 크기에 따라 모든 작업 단계 로그 제거
다음 예에서는 2005년 10월 25일 정오 이전 항목이면서 100MB를 초과하는 모든 작업 단계 로그를 작업 Weekly Sales Data Backup
에서 제거합니다.
USE msdb;
GO
EXEC dbo.sp_delete_jobsteplog
@job_name = N'Weekly Sales Data Backup',
@older_than = '10/25/2005 12:00:00',
@larger_than = 104857600;
GO