Immersion In Data

Oracle

[ORACLE] Datapump

sungjunminn 2024. 4. 26. 10:44

<Source>

1. 권한 부여

SQL> grant EXP_FULL_DATABASE, IMP_FULL_DATABASE to splex;

 

2. Directory 조회

SQL> SELECT * FROM DBA_DIRECTORIES;

 

3. Directory 생성 및 권한 부여

SQL> CREATE DIRECTORY DUMP AS '/u02/splex/var/dump'; # DUMP - 사용하고자 하는 DIRECTORY 이름, '/oracle/dumpfile' - DIRECTORY가 사용할 물리적인 경로
SQL> GRANT READ, WRITE ON DIRECTORY DUMP TO SPLEX; # READ 권한 - Import Pump를 수행하기 위해 필요, WRITE 권한 - Export Pump를 수행하기 위해 필요
SQL> GRANT CREATE ANY DIRECTORY TO SPLEX; # CREATE ANY DIRECTORY 권한 - 일반 유저로 오브젝트를 생성하기 위해 필요
SQL> SELECT * FROM DBA_DIRECTORIES;

 

4. scn 확인

SQL> select current_scn from v$database;

 

5. expdp

# expdp splex/splex directory=dump dumpfile=members.dmp flashback_scn=12826941

 

6. FTP로 dump 파일 이동

3번에서 생성한 디렉토리에 5번에서 생성한 덤프 파일을 FTP 서비스를 이용하여 타겟으로 이동한다. 

 

 <Target>

1. 권한 부여

SQL> grant EXP_FULL_DATABASE, IMP_FULL_DATABASE to splex;

 

2. Directory 조회

SQL> SELECT * FROM DBA_DIRECTORIES;

 

3. Directory 생성 및 권한 부여

SQL> CREATE DIRECTORY DUMP AS '/u02/splex/var/dump'; # DUMP - 사용하고자 하는 DIRECTORY 이름, '/oracle/dumpfile' - DIRECTORY가 사용할 물리적인 경로
SQL> GRANT READ, WRITE ON DIRECTORY DUMP TO SPLEX; # READ 권한 - Import Pump를 수행하기 위해 필요, WRITE 권한 - Export Pump를 수행하기 위해 필요
SQL> GRANT CREATE ANY DIRECTORY TO SPLEX; # CREATE ANY DIRECTORY 권한 - 일반 유저로 오브젝트를 생성하기 위해 필요
SQL> SELECT * FROM DBA_DIRECTORIES;

 

4. impdp

# impdb splex/splex directory=dump dumpfile=members.dmp table_exists_action=truncate