서로 다른 서버로 시퀀스를 이관할 때 기존 시퀀스 값을 그대로 이관해도 되나,
시퀀스 중복이나 문제 발생을 예방하기 위해 기존 값에 +10 정도 더해서 이관합니다. 물론 사전에 관련된 업무는 미리 중지해 놓고, 더 이상 쿼리 유입이 없는 상태여야 합니다.
시퀀스 삭제
-- USER01의 모든 sequence 삭제
SELECT 'DROP SEQUENCE "'||sequence_owner||'"."'||sequence_name||'";' as "Query"
FROM DBA_SEQUENCES where SEQUENCE_OWNER='USER01';
CREATE SEQUENCE 구문 생성
-- create sequence 구문 생성
SELECT 'CREATE SEQUENCE "'||sequence_owner||'"."'||sequence_name||'" MINVALUE '||MIN_VALUE||' MAXVALUE '|| MAX_VALUE||
' INCREMENT BY '||increment_by||' START WITH '||TO_CHAR(last_number+10)||' CACHE '||CACHE_SIZE||' '||DECODE (cycle_flag,'N','NOCYCLE','CYCLE')||';' as "Query"
FROM DBA_SEQUENCES where SEQUENCE_OWNER='USER01';
cycle=n, y 에 따라 시퀀스 구문이 다르게 생성됩니다.
DDL for Sequence WSSEQ cycle_flag = n
CREATE SEQUENCE “USER01”.”SEQ01″ MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 13607704 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE GLOBAL ;
DDL for Sequence BASE_SEQ cycle_flag = y
CREATE SEQUENCE “USER01”.”SEQ02″ MINVALUE 1 MAXVALUE 999999999 INCREMENT BY 1 START WITH 69033215 CACHE 50 NOORDER CYCLE NOKEEP NOSCALE GLOBAL ;
'Database > Oracle' 카테고리의 다른 글
Oracle FlashBack 쿼리 timestamp를 이용한 긴급 복원 (0) | 2024.04.14 |
---|---|
Oracle JOB 중지, 비활성화 작업 (0) | 2024.04.13 |
DBMS_DATAPUMP 중지 방법 (0) | 2024.04.13 |
AWS RDS Oracle Memory 고찰 (0) | 2024.04.13 |
오라클 쿼리 튜닝 방법(기초) (0) | 2024.04.13 |