본문 바로가기
Oracle

JOB과 관련된 명령어

by 취미툰 2021. 4. 21.
반응형

## JOB 등록 (JOB이 등록된 스키마에서 수행)

DECLARE

  JOB_LOGPURGE_DAILY number;

BEGIN

           DBMS_JOB.SUBMIT( JOB_LOGPURGE_DAILY

 

                                                     ,'scott.PL_JOBTEST;'  /* 프로시저의 인자값이 있는 경우 인자값 입력 */

 

                                                     , TRUNC(SYSDATE,'MI') +60/86400                  /* 시작시간 */

 

                                                     , 'TRUNC(SYSDATE,''MI'') +60/86400'  /* repeat_interval : 10  */

 

                                                     , TRUE);                     /* parsing 시점 */

 

END;

 

 

##JOB 삭제 (JOB이 등록된 스키마에서 수행)

execute dbms_job.remove(152);

 

 

##Broken 된 JOB 정상화 (정상화된 JOB Broken은 True)(JOB이 등록된 스키마에서 수행)

 

BEGIN

    DBMS_JOB.BROKEN(72, FALSE);

END;

/

 

 

정상화 시켰는데도 Broken 상태가 지속되고 FAILURE의 횟수만 올라간다면 프로시저가 수행중 오류를 발생시켜 JOB이 수행이 되지 않는 경우이므로 프로시저를 따로 검증할 필요가 있습니다.

 

###JOB INTERVAL 변경(JOB이 등록된 스키마에서 수행)
BEGIN
    DBMS_JOB.INTERVAL(141, 'trunc(sysdate) + 1 + 7/24'); 
END; 
/

###JOB NEXTDAY 변경(JOB이 등록된 스키마에서 수행)
BEGIN
   
    DBMS_JOB.NEXT_DATE(141,trunc(sysdate) + 1 + 7/24); 
END; 
/

반응형

댓글