오라클 exp expdp 차이 - olakeul exp expdp chai

오라클 exp expdp 차이 - olakeul exp expdp chai
오라클_데이터텀프_실행스크립트.txt

1.Oracle Data pump란?

Oracle Data Pump 는 Oracle Database 10g 버전에서 제공되는 Utility .

기존 Exp는 데이터들을 OS 의 바이너리 파일로 전환하는 도구이고기존 imp는 바이너리 파일을 데이터베이스 안의 데이터로 전환하는 도구.

새로 등장한 Data Pump 는 exp 와 imp 를 대체하기 위하여 오라클 10g 버전부터 제공되는 유틸리티로 Exp / Imp 와 유사한 동작을 하지만 data pump 가 훨신 효율적으로 동작.

1.1. 향상 된 속도

  - Data Pump Export 에서 direct path method 를 사용시 single stream data unload 에서 기존의 export 보다 2 배가 빠름.

  - Data pump import 에서는 single stream 의 data load 시 기존의 import 보다 15~45 배 가 빠름

1.2. 향상된 재시작 기능

모든 Data Pump operation 은 Data Pump job 을 실행하는 스키마에 만들어진 master table 을 가지고 있다. Master table 은 현재 수행중인 모든 export 또는 import 시 객체의 상태정보와 dump file set 에서의 위치정보를 가지고 있다. 이는 갑작스런 job 의 중단에도 job 의 성공적인 종료에 상관 없이 어떤 object 의 작업이 진행 중이었는지 알 수 있게 해 준다. 그래서 master table 과 dump file set 이 있는 한 모든 정지된 data pump job 은 데이터 손실 없이 다시 시작할 수 있다.

1.3. 선택적 오프젝트 지정

  - Data Pump job 은 거의 모든 type 의 object 를 exclude 또는 include 시킬 수 있다. 아래의 parameter 가 사용된다.

    - EXCLUDE - 특정 객체 유형을 제외한다. (예: EXCLUDE=TABLE:EMP)

    - INCLUDE - 특정 객체 유형을 포함한다. (예: INCLUDE=TABLE_DATA)

    - CONTENT - 로드를 취소할 데이터를 지정한다. 적합한 키: (ALL), DATA_ONLY 및 METADATA_ONLY.

    - QUERY - 테이블의 부분 집합을 엑스포트하기 위해 사용되는 술어 절이다.

2. EXPDP 수행

2.1. 실제 운영체제에 디렉토리를 생성해야함.

2.2. 수행 전 디렉토리 생성 및 권한 부여

  - EXPDP파일을 저장 할 디렉토리를 생성.

 - USER에게 디렉토리 권한을 부여

2.3. 특정 테이블로만 EXPORT 받기

-대략적인 dmp 파일 size 를 예측할 수 있다.

2.4. 전체 DB EXPORT 받기 및 이어 받기 기능

  - 전체 DB를 EXPORT 받기 위해서는 DBA권한이 필요함.

  - 현재 백업 진행 중인 상태를 DBA_DATAPUMP_JOBS 테이블에서 확인 가능

2.5. 이어 받기 기능 테스트

  - 덤프 중 중간에 ctrl+c 눌러 빠져 나옴.

  - Status 는 현재까지 진행 된 상태를 나타나며,EXPORT 명령어를 사용하면, 중지 ,시작, 완전 삭제 등 컨트롤이 가능.

 - stop_job은 진행중인 export 작업을 멈추는 명령어.

  - 이어서 다시 EXPORT받기

  - attach명령어에 job_name을 입력하면 다시 이어 받기 모드로 전환

  - start_job명령어를 사용하면 정지 되었던 EXPORT 작업이 재 시작 된다. 재시작 상태는 DBA_DATAPUMP_JOBS 테이블에서 확인 가능

2.6 그 이외의 기능들

  - 여러 유저의 테이블 한번에 EXPDP 받기 (10g에서는 불가)

    - expdp scott/ORACLE directory=DUMP dumpfile=dump_defer_db1.dmp job_name=jsh tables= SCOTT.EMP,STG.NAD_GRP20        

3.IMPDP 수행

3.1 FULL IMPORT 받기

  - 전체 EXPORT 받은 덤프 파일을 사용하여 IMPORT 적용.

3.1 덤프 작업 모니터링

  - 덤프 작업 중일 때 현재 진행 상태를 모니터링 할 수 있음.( 여러 번 모니터링 했으나 값이 지속적 변경이 일어 나는 것은 1번 확인함)

오라클 exp expdp 차이 - olakeul exp expdp chai

# 우리는 Datapump를 사용시 DB의 버전이 낮은 -> 높은, 높은 -> 낮은 버전으로 Datapump를 실시할 수 있습니다.

이럴 경우에 version이라는 파라미터에 대해 이해가 필요합니다.

1. Datapump dumpfile compatibility(EXPDP 할 때 명시하여야할 것)

오라클 exp expdp 차이 - olakeul exp expdp chai

예를 들어 Expdp 하는 DB의 버전이 12.1일때 10.2의 DB에 impdp 하려면, expdp 할때 VERSION=10.2를 명시해줘야 한다는 내용입니다.

10.2에서 expdp하여 10.2에 넣는다면 버전이 같기 때문에 따로 명시해줄 필요는 없습니다.

여기에서 Compatible의 경우 pfile 및 spfile(show parameter compatible)에서 해당 버전을 확인하면 됩니다.

2. dumpfile의 정보 보는법

DB 서버에서 .dmp로 저장하여 Datapump받은 파일들은 많은데, 해당 파일이 언제 받아졌고, 어떤 방식으로 받아졌는지 확인할 때 유용합니다.

SET serveroutput on SIZE 1000000
exec show_dumpfile_info(p_dir=> ‘my_dir’, p_file=> ‘expdp_f.dmp’)

—————————————————————————-
Purpose..: Obtain details about export dumpfile.        Version: 18-DEC-2013
Required.: RDBMS version: 10.2.0.1.0 or higher
.          Export dumpfile version: 7.3.4.0.0 or higher
.          Export Data Pump dumpfile version: 10.1.0.1.0 or higher
Usage….: execute show_dumfile_info(‘DIRECTORY’, ‘DUMPFILE’);
Example..: exec show_dumfile_info(‘MY_DIR’, ‘expdp_s.dmp’)
—————————————————————————-
Filename.: expdp_f.dmp
Directory: my_dir
Disk Path: /bugmnt1/em/celclnx14/SR3.7997287101/user/expdp
Filetype.: 1 (Export Data Pump dumpfile)
—————————————————————————-
…Database Job Version……….: 12.01.00.00.00
…Internal Dump File Version….: 4.1 (Oracle12c Release 1: 12.1.0.x)
…Creation Date……………..: Wed May 28 07:57:24 2014
…File Number (in dump file set): 1
…Master Present in dump file…: 1 (Yes)
…Master in how many dump files.: 1
…Master Piece Number in file…: 1
…Operating System of source db.: x86_64/Linux 2.4.xx
…Instance Name of source db….: TARMH
…Characterset ID of source db..: 871 (UTF8)
…Language Name of characterset.: UTF8
…Job Name………………….: “SYS”.”SYS_EXPORT_FULL_01″
…GUID (unique job identifier)..: FA721C2C84DB5E94E0437108DC0AF5E6
…Block size dump file (bytes)..: 4096
…Metadata Compressed………..: 1 (Yes)
…Data Compressed……………: 0 (No)
…Compression Algorithm………: 3 (Basic)
…Metadata Encrypted…………: 0 (No)
…Table Data Encrypted……….: 0 (No)
…Column Data Encrypted………: 0 (No)
…Encryption Mode……………: 2 (None)
…Internal Flag Values……….: 514
…Max Items Code (Info Items)…: 23
—————————————————————————-

PL/SQL procedure successfully completed.

3. 참고문서(support.oracle.com)

Export/Import DataPump Parameter VERSION – Compatibility of Data Pump Between Different Oracle Versions [Video] (문서 ID 553337.1)