다음을 통해 공유


sp_delete_jobsteplog(Transact-SQL)

이 인수로 지정되는 모든 SQL Server 에이전트 작업 단계 로그를 제거합니다. 이 저장 프로시저를 사용하여 msdb 데이터베이스의 sysjobstepslogs 테이블을 유지 관리할 수 있습니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

구문

sp_delete_jobsteplog { [ @job_id = ] 'job_id' | [ @job_name = ] 'job_name' }
       [ , [ @step_id = ] step_id | [ @step_name = ] 'step_name' ]
       [ , [ @older_than = ] 'date' ]
       [ , [ @larger_than = ] 'size_in_bytes' ]

인수

  • [ @job_id =] 'job_id'
    제거할 작업 단계 로그가 포함된 작업의 ID입니다. job_id는 int이며 기본값은 NULL입니다.

  • [ @job_name =] 'job_name'
    작업의 이름입니다. job_name은 sysname이며 기본값은 NULL입니다.

    [!참고]

    job_id 또는 job_name 중 하나를 지정해야 하며 둘 다를 지정할 수는 없습니다.

  • [ @step_id =] step_id
    작업 단계 로그를 삭제할 작업 단계의 ID입니다. 포함하지 않을 경우 @older_than 또는 @larger_than을 지정하지 않으면 작업의 모든 작업 단계 로그가 삭제됩니다. step_id는 int이며 기본값은 NULL입니다.

  • [ @step_name =] 'step_name'
    작업 단계 로그를 삭제할 작업 단계의 이름입니다. step_name은 sysname이며 기본값은 NULL입니다.

    [!참고]

    step_id 또는 step_name 중 하나를 지정할 수 있지만 둘 다를 지정할 수는 없습니다.

  • [ @older_than =] 'date'
    유지할 가장 오래된 작업 단계 로그의 날짜와 시간입니다. 이 날짜와 시간보다 오래된 모든 작업 단계 로그는 제거됩니다. date는 datetime이며 기본값은 NULL입니다. @older_than@larger_than을 둘 다 지정할 수 있습니다.

  • [ @larger_than =] 'size_in_bytes'
    유지할 가장 큰 작업 단계 로그의 크기(바이트)입니다. 이 크기보다 큰 모든 작업 단계 로그는 제거됩니다. @larger_than@older_than을 둘 다 지정할 수 있습니다.

반환 코드 값

0(성공) 또는 1(실패)

결과 집합

없음

주의

sp_delete_jobsteplogmsdb 데이터베이스에 있습니다.

@job_id 또는 @job_name만 지정하고 다른 인수를 지정하지 않으면 지정된 작업에 대한 모든 작업 단계 로그가 삭제됩니다.

사용 권한

기본적으로 sysadmin 고정 서버 역할의 멤버는 이 저장 프로시저를 실행할 수 있습니다. 다른 사용자는 msdb 데이터베이스의 다음 SQL Server 에이전트 고정 데이터베이스 역할 중 하나를 부여 받아야 합니다.

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

이러한 역할의 사용 권한에 대한 자세한 내용은 SQL Server 에이전트 고정 데이터베이스 역할를 참조하십시오.

sysadmin 멤버만 다른 사용자가 소유한 작업 단계 로그를 삭제할 수 있습니다.

1.작업에서 모든 작업 단계 로그 제거

다음 예에서는 작업 Weekly Sales Data Backup에 대한 모든 작업 단계 로그를 제거합니다.

USE msdb ;
GO

EXEC dbo.sp_delete_jobsteplog
    @job_name = N'Weekly Sales Data Backup';
GO

2.특정 작업 단계에 대한 작업 단계 로그 제거

다음 예에서는 작업 Weekly Sales Data Backup의 2단계에 대한 작업 단계 로그를 제거합니다.

USE msdb ;
GO

EXEC dbo.sp_delete_jobsteplog
    @job_name = N'Weekly Sales Data Backup',
    @step_id = 2;
GO

3.만든 날짜와 크기를 기준으로 모든 작업 단계 로그 제거

다음 예에서는 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

참고 항목

참조

sp_help_jobsteplog(Transact-SQL)

SQL Server 에이전트 저장 프로시저(Transact-SQL)