개요
TAC(Tibero Active Cluster) 환경에서는 업무 특성이나 시스템 부하에 따라 특정 노드에서 job을 수행하도록 지정할 수 있습니다.
이를 통해 불필요한 리소스 분산을 방지하고, 운영 노드의 OS 자원 사용률을 최적화하여 시스템 안정성을 높일 수 있습니다.
방법
문법
DBMS_JOB.INSTANCE 프로시저 사용 예시입니다.
DBMS_JOB.INSTANCE
(
job IN BINARY_INTEGER,
instance IN BINARY_INTEGER,
force IN BOOLEAN DEFAULT FALSE
);
SQL
복사
•
job : 실행할 JOB의 번호입니다.
•
instance : JOB을 수행할 INSTANCE입니다.
참고
•
0 : ANY_INSTANCE의 의미
•
1 : 1번노드를 의미
•
2 : 2번노드를 의미
•
force : 지원되지 않는 기능이므로 값을 무시합니다.
예제
13번 job을 2번 노드에서 수행하도록 설정하는 예제입니다.
SQL> exec DBMS_JOB.INSTANCE (13,2,null);
PSM completed.
-> 13번 job을 2번 노드에서 수행하도록 설정한다.
SQL> SELECT * FROM DBA_JOBS WHERE INSTANCE=2;
JOB SCHEMA_USER
---------- -----------
NEXT_DATE
--------------------------------------------------------------------------------
INTERVAL
--------------------------------------------------------------------------------
BROKEN FAILURES
------ ----------
WHAT
--------------------------------------------------------------------------------
INSTANCE
----------
LAST_DATE
--------------------------------------------------------------------------------
THIS_DATE
--------------------------------------------------------------------------------
13 0
2025/04/30 00:00:00
TRUNC(SYSDATE)+1
N 0
DBMS_JOB.PURGE_LOG(30);
2
2025/04/29 00:00:00
1 row selected.
SQL
복사