2013-10-03 2 views
0

다음 시나리오를 가정 해 봅시다. SQL Server 에이전트에는 매일 오전 6시에 실행되며 매일 잘 작동하는 예약 된 작업이 있습니다. 어느 날 오전 8시에 오전 5시에 서버가 실패하지만 서버가 다시 가동되면 실행 예정 시간보다 2 시간 늦습니다.예약 된 SQL 작업이 실행되지 않았는지 확인하는 방법

작업이 이전에 실행되어 있어야하고 일종의 "누락 된 일정"상태를 나타내야하는지 어떻게 확인할 수 있습니까?

접근 : 실행 EXEC MSDB.DBO.SP_GET_COMPOSITE_JOB_INFO @job_id하고 그것이 작업이 예정되었지만 실행되지 못했음을 의미합니다 존재하지 않는 경우 last_run_time & last_run_time[msdb].[dbo].[sysjobhistory]에 있는지 확인하십시오. 이 접근법이 맞습니까?

의견이나 제안이 있으십니까?

미리 감사드립니다.

+0

상태를 확인 하시겠습니까? 그렇지 않다면 작업을 마우스 오른쪽 버튼으로 클릭하고 '기록보기' – EricZ

+0

직장에 알림을 추가 할 수 있습니까? 작업이 성공적으로 완료되면 어떤 방법으로 알릴 수 있습니다. 통보가 제 시간에 도착하지 않으면 작업에 약간의 문제가 있습니다. – Serg

답변

0

나는 이것을 겉으로보기에는 이미 풀려고 노력했지만 이미 문제를 해결해야했습니다. 생각하는 것만 큼 일반적인 필요성이 아닌 것처럼 보입니다. 여하튼, 나는 아래에 그것을 발견 할 때 나의 자신의 수표를 쓰는 여행에 착수하려고했다. 그것은 내 서버에서 찾기를 원하는 작업을 잡았다는 점에서 작동하는 것 같습니다.

당신의 접근 방식에 문제가 있다면 그것은 매우 빠르게 되풀이되는 작업이거나 매일 실행되지만 토요일을 건너 뛰고 월요일에 확인하는 것입니다. 이 일을 올바르게 수행 한 것처럼 보였습니다. 빈도에 들어서서 언제 실행해야하는지에 대한 표를 작성하고 점검 기록을보고 실행되었는지 확인해야했습니다. 아래는 길고 이해하는 데 시간이 걸리지 만 그렇게하는 것처럼 보입니다.

http://www.nuronconsulting.com/TemplateScripts_SQL_Agent_JobsJobScript_FindMissedJobs_sql.aspx

관련 문제