분 단위로 수행되는 MVIEW가 서비스 되는 노드와는 반대의 노드에서 수행 하면서
GCS 가 대량으로 발생했고, 이로 인하여 active 세션마저 증가 하였다.
물론 refresh 완료 되고 스스로 풀리기는 했지만 이런 장애 상황을 방지 해 보자
-- 변경 전 JOB 확인
sql> col what for a60
sql> select job, log_user, what, instance
from dba_jobs
order by log_user, job;
JOB LOG_USER WHAT INSTANCE
---------- ------------------------------ ------------------------------------------------------------ ----------
2 AAAAAAAA dbms_refresh.refresh('"AAAAAAAA"."MST_PROD_INFO_VW"'); 0
21 AAAAAAAA dbms_refresh.refresh('"AAAAAAAA"."MST_PROD_VW"'); 0
3 BBBBBBB dbms_refresh.refresh('"BBBBBBB"."PO2_GNR_SONG_CNT_VW"'); 0
AAAAAAAA 는 node2 에서 서비스 하고, BBBBBBB 는 node1 에서 서비스 한다.
-- 해당 유저로 로그인
sql> conn AAAAAAAA/AAAAAAAA
Connected.
-- 인스턴스 변경
sql> exec dbms_job.instance(job=>2, instance=>2) ;
PL/SQL procedure successfully completed.
sql> exec dbms_job.instance(job=>21, instance=>2) ;
PL/SQL procedure successfully completed.
sql> commit;
Commit complete.
sql> conn BBBBBBB/BBBBBBB
Connected.
sql> exec dbms_job.instance(job=>3, instance=>1) ;
PL/SQL procedure successfully completed.
-- 변경 후 JOB 확인
sql> select job, log_user, what, instance
from dba_jobs
order by log_user, job;
JOB LOG_USER WHAT INSTANCE
---------- ------------------------------ ------------------------------------------------------------ ----------
2 AAAAAAAA dbms_refresh.refresh('"AAAAAAAA"."MST_PROD_INFO_VW"'); 2
21 AAAAAAAA dbms_refresh.refresh('"AAAAAAAA"."MST_PROD_VW"'); 2
3 BBBBBBB dbms_refresh.refresh('"BBBBBBB"."PO2_GNR_SONG_CNT_VW"'); 1
instance 가 '0' 이면 상대적으로 리소스 여유가 있는 node 에서 수행, '0'이 아니면 해당 노드에서 수행 된다.
'OraclE' 카테고리의 다른 글
DATAPUMP 암호화 (0) | 2017.01.19 |
---|---|
ORACLE 12c UNIFIED AUDIT 사용 (0) | 2016.07.13 |
Auditing Enhancements (aud$ 테이블 관리) (0) | 2016.04.11 |
dbms_scheduler 변경 (2) | 2016.01.04 |
flashback (0) | 2015.04.27 |