--data pump 모니티링
select * from dba_datapump_jobs;
select * from dba_datapump_sessions;
--directory 생성
create directory temp_dir as '/u01';
grant read,write on directory temp_dir to scott;-- 유저에 권한 부여
grant EXP_FULL_DATABASE, IMP_FULL_DATABASE to scott;
SQL> create user dpumpuser identified by dpumpuser;
SQL> grant connect, resource, exp_full_database, imp_full_database to dpumpuser;
SQL> create directory data_pump as '/home/oracle/data_pump';
SQL >grant read, write on directory data_pump to dpumpuser;
$ expdp system/asd123 full=y directory=DATA_PUMP_DIR dumpfile=DATA_PUMP_TEST.dmp
$ impdp dpumpuser/dpumpuser directory=data_pump dumpfile=20081030.dmp
11:50
expdp system/asd123 DIRECTORY=DATA_PUMP_DIR dumpfile=test1.dmp, test2.dmp, test3.dmp parallel=3 Logfile=DATA_PUMP_TEST2.log CONTENT=DATA_ONLY
dumpfile=DATA_PUMP_TEST1.dmp
dumpfile=(test1.dmp, test2.dmp, test3.dmp) parallel=3
contents={all | metadata_only | data_only}
Data Pump Export 파라메타 (파일 및 디렉토리 관련 파라메타)
1) DIRECTORY : 덤프파일의 위치 및 로그파일의 위치 지정
2) DUMPFILE : export 받아 파일시스템에 저장될 덤프파일의 이름을 지정하는 파라메타
3) FILESIZE : export 받는 1개 파일의 최대크기를 지정하는 파라메타
4) PARFILE : 파일에 파라메타들을 저장해 두고 Data Pump를 이용할 때마다 참조 하여 작업을 수행
5) LOGFILE and NOLOGFILE : 로그파일명을 지정하는 파라메타. 파라메타를 설정하지 않으면 export.log라는
파일명으로 로그가 남음
6) COMPRESSION : METADATA_ONLY, NONE 두개의 옵션이 있으며 덤프파일내에 메타데이타가 압축되어 보관된다.
디폴트는 METADATA_ONLY로 설정되어 있음 (실제 데이터가 압축되어 보관됨)
Data Pump Export 파라메타 (export 필터링 관련 파라메타)
1) CONTENT : 3개의 옵션을 가질 수 있음. (ALL, DATA_ONLY, METADATA_ONLY)
2) EXCLUDE and INCLUDE : 원하는 오브젝트를 제외하거나 포함 시켜 받을 수 있다.
INCLUDE 또는 EXCLUDE=OBJECT_NAME:”=‘조건’” 형식으로 사용할 수 있으며,
오브젝트의 종류에는 TABLE, INDEX, PROCEDURE, FUNCTION 등이 있다.
3) QUERY : 테이블 내에 있는 데이터 중 특정 조건에 만족하는 데이터만 export 받고자 할 때 사용.
EX) QUERY=SCOTT.EMP:”where SAL>1000”
4) SAMPLE : 테이블의 데이터를 export 할 때 퍼센트를 정해서 지정된 퍼센트 만큼의 데이터를 샘플링 해서 뽑음.
EX) SAMPLE=SCOTT.EMP:20
Data Pump Export 파라메타 (JOB 관련 파라메타)
1) JOB : Data Pump의 작업명을 JOB 파라메타에 주어진 이름으로 등록
2) STATUS : 작업의 갱신된 내용을 STATUS에 설정된 크기의 시간 간격으로 진행 상태를 보고자 할 때 등록
3) FLASHBACK_SCN : FLASHBACK_SCN 파라메타를 이용하여 SCN(system change number) 값을 지정할
경우에 설정된 SCN기준 이전까지의 상태를 받아 볼 수 있다.
4) FLASHBACK_TIME : 파라메타에 지정된 시간까지의 변경사항만을 Export 하게 된다.
5) PARALLEL : PARALLEL 파라메타를 사용할 경우 export 작업시에 프로세스를 필요한 숫자 만큼 만들어
수행 함으로써 작업의 속도를 향상 시킬 수 있다. PARALLEL 수만큼 dmp 파일 개수가 필요함
Data Pump import 관련 파라메타(필터링 관련 파라메타)
1) CONTENT : DATA_ONLY, ALL, METADATA_ONLY 3가지 값을 가질 수 있음.
2) INCLUDE, EXCLUDE : INCLUDE 또는 EXCLUDE=OBJECT_NAME:”=‘조건’” 형식으로 사용할 수 있으며,
오브젝트의 종류에는 TABLE, INDEX, PROCEDURE, FUNCTION 등이 있다.
3) TABLE_EXISTS_ACTION : SKIP, APPEND, TRUNCATE, REPLACE 의 값을 가질 수 있다.
- SKIP : 같은 테이블을 만나면 지나치고 다음 테이블을 import 한다.
- APPEND : 같은 테이블을 만나면 기존의 데이터에 추가하여 import 한다
- TRUNCATE : 같은 테이블을 만날 경우 기존의 테이블을 TRUNCATE 하고 새로운 데이터를 import 한다.
- REPLACE : 같은 테이블을 만날 경우 기존의 테이블을 DROP 하고 테이블을 재생성 한 후 데이터를 import한다.
Data Pump import 관련 파라메타(리맵핑 관련 파라메타)
1) REMAP_SCHEMA : A 유저 스키마로 Export 받은 데이터를 B 유저 스키마로 import 하고자 할때 사용.
EX) REMAP_SCHEMA=SCOTT:TEST
2) REMAP_DATAFILE : Export 된 dumpfile 에는 datafile 정보까지 포함하게 된다. 하지만 다른 시스템의 디스크
경로 상에는 존재하지 않는 경로이기 때문에 import에 실패하게 된다. 이러한 경우에 사용
할 수 있는 파라메타가 REMAP_DATAFILE 이다.
EX) REMAP_DATAFILE='/ora10/oradata1','/ora10/oradata2'
3) REMAP_TABLESPACE : Export 받은 데이터파일에 속한 TABLESPACE에서 다른 테이블 스페이스로
REMAPPING 하고자 하는 경우 사용
EX) REMAP_TABLESPACE='scott_tsb':'test:tbs'
expdp hr/hr
tables=paratest
directory=data_pump_test
dumpfile=paratest%U.dmp
parallel=3
job_name=parr_test
impdp hr/hr directory=data_pump_test dumpfile=paratest%U.dmp job_name=parr_test ; --parallel로 import 할때
impdp system/asd123 directory=data_pump_test dumpfile=paratest%U.dmp schemas=SCOTT
impdp
idb/idbpwd
DIRECTORY=impdp_dir
dumpfile=xxx.dmp
REMAP_SCHEMA=ida:idb
REMAP_TABLESPACE=ida_tbs:idb_tbs
expdp 나 impdp 실행시 ORA-39213:Metadata processing is not available 오류가 발생하면
execute dbms_metadata_util.load_stylesheets 실행
expdp system/asd123 schemas=SCOTT DIRECTORY=DATA_PUMP_DIR dumpfile=YSS.dmp Logfile=YSS.log CONTENT=ALL COMPRESSION=METADATA_ONLY
impdp system/asd123 directory=DATA_PUMP_DIR dumpfile=YSS.dmp schemas=SCOTT CONTENT=ALL TABLE_EXISTS_ACTION=REPLACE