본문 바로가기
Database/MYSQL

대량의 데이터 INSERT시 빠르게 하는방법

by 반화넬 2007. 6. 4.
반응형
대량의 데이터 INSERT시 빠르게 하는방법

 

-> 주의 : undo log와 redo log가 쌓이지 않습니다 

              즉 롤백할수 없으며 장애시 복구불가능 합니다

              관리상 대량의 임시 데이터를 INSERT 할때 사용하는것이 바람직 합니다

 

PARALLEL 사용

DROP INDEX pks_target_t;

 

ALTER SESSION ENABLE PARALLEL DML;

ALTER TABLE target_t NOLOGGING;

 

INSERT /*+ PARALLEL (target_t, 4) */ INTO target_t

SELECT /*+ PARALLEL (source_t, 4) */ * FROM source_t;

 

COMMIT;

 

ALTER TABLE target_t LOGGING;

ALTER SESSION DISABLE PARALLEL DML;

 

CREATA INDEX pks_target_t on target_t (...);
 
 

 

APPEND 사용

DROP INDEX pks_target_t;

 

ALTER TABLE target_t NOLOGGING;

 

INSERT /*+ APPEND */ INTO target_t

SELECT * FROM source_t;

 

COMMIT;

 

ALTER TABLE target_t LOGGING;

 

CREATA INDEX pks_target_t on target_t (...);
반응형