대용량 마이그레이션작업 방법(dblink이용) (DBMS)

퍼옴..

 

/*

dblink를 이용하여 프로시져로 데이터 전환작업시 아래 방법을 사용한다.

실제로 nologging하고 append하면 undo를 사용하지 않는다고 함.

테스트해봐야 믿는 나쁜 버릇이 있는데....눈으로 확인해 봐야겠다.

*/

참조 : http://jentshin.new21.org/study/?arc=2004_04&id=study&PHPSESSID=dce42f709f454748816a8e89cd007e87#179

 

* 대용량(?) DB export 시 15GB정도의 자료를 export하는데, 3시간정도
import를 하는데 10시간 정도 걸림에 있어서...
dblink를 이용한 insert into를 이용 append hint로 direct-load 이용하여
index는 drop하고, data load후 create 생성.
index 생성 스크립트는 imp 에서도 가능하나, TOAD등의 툴에서 깨끗하게 만들어낼 수 있을듯....^^;


 

create public database link dblinkname
connect to system identified by manager using 'TNS_NAME';


 

/* NEW 오라클 테이블 비우기 */
select 'truncate table '||table_name||';' from user_tables;


 

/* NEW 오라클 노로깅 */
select 'alter table '||table_name||' nologging;' from user_tables ;


 

/* NEW 오라클 index drop */
select 'drop index '||object_name||';' from user_objects
where object_type = 'INDEX';


 

/* NEW 오라클 인서트  */
select 'insert /*+ append */ into '||table_name||' select * from '||table_name||'@dblinkname;'
from user_tables
where owner = 'KVDBA';


 


/* NEW 오라클 테이블 로깅으로 변경 */
select 'alter table '||table_name||' logging;' from user_tables;


덧글. 오라클이 CBO이면 analyze 를 수행할것을 권장...

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받고 있습니다. 1 5

잘생긴 팝콘 방문해주셔서 감사합니다.

이 글을 공유하기

댓글

Designed by JB FACTORY