오라클 스케쥴러 중복 실행관련해서 질문 드립니다. 0 2 3,895

by 훈훈후니 [Oracle 기초] 오라클 스케쥴러 중복 [2016.05.14 19:18:07]


 

 

안녕하세요
오라클에서 데이터 백업하는 걸 스케쥴러로 돌리고 있는데요

단순히 insert select 문입니다.

근데 이걸 5분에 한번씩 돌리고 있는데, 데이터가 많이 들어가 있는경우는 실행하는데 5분이 넘기도 합니다.

문제는 이런 경우에 스케쥴러가 중복 실행 되면 안되는데요
혹시 오라클에서 자동적으로 중복 실행은 막아주나요? 그게 아니라면 동일한 스케쥴러가 이미 실행중일 때는 중복으로 실행되지 않게 막는 방법이 있을까요?

시간을 늘리는 방법 말구 중복을 막는 방법으로 했으면 합니다.데이터 양이 워낙 들쑥날쑥해서요..

답변 부탁드립니다~

감사합니다.

 

 

by 신이만든짝퉁 [2016.05.16 17:29:36]

dbms_scheduler 에서 제공해주는 기능이 있는지는 모르겠습니다.

저 같은 경우 플래그를 두어 상태값의 변화를 통해 중복실행을 방지합니다.

예:

테이블 플래그 검사 -> 실행가능? ->  테이블 플래그를 작업중으로 변경 -> 로직처리 -> 테이블 플래그를 작업완료로 변경
 


by 신이만든짝퉁 [2016.05.16 17:30:14]

위 예에서 테이블 플래그가 작업중으로 조회되면 해당 프로시저는 실행되지 않고 바로 종료처리하면 됩니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입