메뉴 건너뛰기

?

단축키

Prev이전 문서

Next다음 문서

가 크게 작게 위로 아래로 댓글로 가기
Extra Form
출처 https://offbyone.tistory.com/160

새로운 Oracle export/import 유틸리티 - Oracle Data Pump(expdp/impdp)

프로그래밍/데이터베이스 2018. 4. 17. 19:55

Oracle 10g 부터는 데이터의 백업과 복원을 위해서 기존에 사용되는 exp/imp툴을 대신할 Oracle Data Pump(expdp/impdp) 유틸리티가 제공되어 집니다. exp/imp 툴이 없어진것은 아닙니다. Oracle 11g 부터는 기존의 Original  exp/imp툴에 대한  일반적인 사용지원이 되지 않는다고 합니다.


Oracle Data Pump 유틸리티는 더욱 유연하고, 빠른 속도의 기존의 exp/imp를 대체할 유틸리티 라고 합니다. 기존의 exp/imp와의 차이점을 간단히 알아보겠습니다.


1. exp/imp는 덤프 파일을 유틸리티를 실행하는 컴퓨터에 생성합니다. expdp/impdp 는 덤프 파일이 데이터베이스 서버의 지정된 폴더에 생성됩니다. 즉, 덤프 파일을 받고 올리기 위해서 서버에 로그인해야만 합니다.


2. exp/imp는 덤프파일이 생성된 서버의 버전이 다를 경우 호환이 되지 않습니다. 메이저 버전 뿐만 아니라, 마이너 버전 사이에도 호환이 거의 안되는것 같습니다. expdp/impdp 는 실행시 버전을 지정하여 그에 맞는 덤프 파일을 생성할 수 있습니다.



Oracle Data Pump 유틸리티의 사용법을 알아보겠습니다.


Oracle Data Pump 유틸리티를 사용하기 위해서는 덤프 파일이 생성될 폴더를 지정하고, 그 폴더에 읽기, 쓰기 권한이 있어야 합니다.(데이터 import 를 위해 읽기, export를 위해 쓰기 권한이 필요합니다.)


이 예제에서는 Oracle Express Editon 11g r2를 사용해서 테스트 했습니다.


※ 디렉토리 생성 및 권한 주기


1. SYSTEM으로 로그인합니다.(일반 계정으로는 디렉토리를 추가할 권한이 없으므로 SYSTEM 계정으로 추가하고, 권한을 줍니다.)


2. 덤프 파일이 생성될 디렉토리를 생성합니다. 여기서는 'E:\export' 를 만들었습니다.(이 폴더는 데이터베이스 서버에 만드는 것입니다.)


3. 'E:\export' 디렉토리를 TEST_DUMP 다른 이름으로 데이터베이스에 등록합니다.

 

CREATE OR REPLACE DIRECTORY TEST_DUMP AS 'E:\export';

 

4. 일반유저인 xeuser에게 이 디렉토리에 읽기, 쓰기 권한을 줍니다.

 

GRANT READ, WRITE ON DIRECTORY TEST_DUMP TO xeuser;

 

5. xeuser 계정으로 로그인하여 권한을 확인합니다.


- 디렉토리는 all_directories 뷰에서 확인할 수 있습니다.

 

SELECT * FROM all_directories;

결과)
OWNER  DIRECTORY_NAME  DIRECTORY_PATH
SYS    TEST_DUMP       E:\export

 

- 권한의 확인은 다음과 같이 할 수 있습니다.

 

SELECT * FROM all_tab_privs WHERE TABLE_NAME IN (
  SELECT DIRECTORY_NAME FROM all_directories
);

결과)
GRANTOR  GRANTEE  TABLE_SCHEMA  TABLE_NAME  PRIVILEGE  GRANTABLE  HIERARCHY
SYSTEM   XEUSER   SYS           TEST_DUMP   READ       NO         NO
SYSTEM   XEUSER   SYS           TEST_DUMP   WRITE      NO         NO

 

- Oracle 11g r2 이상이라면 다음 쿼리도 사용할 수 있습니다.

 

SELECT * FROM datapump_dir_objs;

결과)
NAME       PATH       READ  WRITE
TEST_DUMP  E:\export  TRUE  TRUE

 


※ 데이터 export/import 하기


Oracle Data Pump는 명령행 유틸리티 expdp/impdp를 사용해서 작업합니다.



1. 테이블 export/import(특정 테이블을 export/import 합니다.)

 

E:\>expdp xeuser/xeuser@xe tables=EMP,DEPT directory=TEST_DUMP dumpfile=EMP_DEPT.dmp logfile=expdpEMP_DEPT.log

E:\>impdp xeuser/xeuser@xe tables=EMP,DEPT directory=TEST_DUMP dumpfile=EMP_DEPT.dmp logfile=impdpEMP_DEPT.log

 

* xeuser/xeuser@xe - 로그인아이디/비밀번호@SID 입니다.

* tables=EMP, DEPT - 테이블을 콤마(,)로 분리해서 나열합니다.

* directory=TEST_DUMP - 덤프 파일이 생성될 디렉토리입니다. 위해서 만들것 입니다.

* dumpfile=EMP_DEPT.dmp - 생성될 덤프 파일의 이름 입니다.

* logfile=expdpEMP_DEPT.log - 로그 파일의 이름입니다. 덤프파일과 같은 위치에 만들어 집니다.



2. 스키마(Schema) export/import 하기

 

E:\>expdp xeuser/xeuser@xe schemas=XEUSER directory=TEST_DUMP dumpfile=XEUSER.dmp logfile=expdpXEUSER.log

E:\>impdp xeuser/xeuser@xe schemas=XEUSER directory=TEST_DUMP dumpfile=XEUSER.dmp logfile=impdpXEUSER.log

 

* schemas=XEUSER : 주어진 사용자(schema)가 가진 전체 객체를 export/import합니다.(이전 exp의 OWNER와 같은 기능의 옵션 입니다.)



3. 데이터베이스 전체 export/import 하기

 

E:\>expdp system/password@xe full=Y directory=TEST_DUMP dumpfile=XE.dmp logfile=expdpXE.log

E:\>impdp system/password@xe full=Y directory=TEST_DUMP dumpfile=XE.dmp logfile=impdpXE.log

 

* 전체 작업은 권한이 있는 system 계정으로 작업합니다.

* full=Y - 전체 데이터베이스를 대상으로 합니다.



4. 데이터베이스 Link를 export/import 하기


데이터베이스 Link를 통해서 export/import 하기 위해서는 로컬과 리모트 사용자 모두에게 EXP_FULL_DATABASE / IMP_FULL_DATABASE 롤이 부여되어 있어야 합니다.


다음 예는 로컬계정 은 xeuser이고, 리모트 서버가 REMOTE_SCOTT라는 이름으로 링크 되어 있다고 가정합니다.  리모트 계정은 scott 입니다.

 

E:\>expdp xeuser/xeuser@xe tables=SCOTT.EMP network_link=REMOTE_SCOTT directory=TEST_DUMP dumpfile=EMP.dmp logfile=expdpEMP.log

E:\>impdp xeuser/xeuser@xe tables=SCOTT.EMP network_link=REMOTE_SCOTT directory=TEST_DUMP logfile=impdpSCOTT.log remap_schema=SCOTT:XEUSER

 

* remap_schema=SCOTT:XEUSER - SCOTT계정의 객체들을 XEUSER계정으로 로드 합니다.



5. 버전을 지정하여 export 합니다.(버전은 9.2 이상만 지정할 수 있습니다.)

 

E:\>expdp xeuser/xeuser@xe schemas=XEUSER version=10.2 directory=TEST_DUMP dumpfile=XEUSER.dmp logfile=expdpXEUSER.log

 


이것으로 Oracle Data Pump 사용법에 대해 알아보았습니다.


자세한 옵션들에 대해서는 다음 URL을 참고 하세요.


출처 : https://oracle-base.com/articles/10g/oracle-data-pump-10g



List of Articles
번호 제목 날짜 조회 수
111 LDAP / SSO Authentication Services Community Extensions Documentation Shop My TYPO3 Get TYPO3 LDAP / SSO Authenticationig_ldap_sso_auth / stable 5 This extension provides LDAP ... 2020.09.10 1203
110 Oralce DB 백업(덤프) 하는 방법(exp, expdp툴 사용) Oralce DB 백업(덤프) 하는 방법(exp, expdp툴 사용)현수 deftkang 2020. 2. 14. 18:20 Oracle 10g 부터 데이터 백업과 복원을 위해 기존엔 exp/imp 툴이 있었는... 2020.09.09 787
» 새로운 Oracle export/import 유틸리티 - Oracle Data Pump(exp... 새로운 Oracle export/import 유틸리티 - Oracle Data Pump(expdp/impdp)프로그래밍/데이터베이스 2018. 4. 17. 19:55 Oracle 10g 부터는 데이터의 백업과 복원을... 2020.09.09 504
108 Oracle LDAP INSTALLATION AND CONFIGURATION LDAP INSTALLATION AND CONFIGURATIONThe LDAP Installation and Configuration consists of following topics: Using Oracle Unified Directory Creating Weblog... 2020.09.09 2113
107 LDAP Command-Line Tools - Oracle9i Directory Service Integr... Oracle9i Directory Service Integration and Deployment Guide Release 2 (9.2) Part Number A96579-01 Home Book List Contents Index Master Index Feedback B... 2020.09.09 2014
106 CentOS 7 에 OpenLDAP 설치 CentOS 7 에 OpenLDAP 설치 2020.09.09 540
105 CentOS 7 에 Oracle 11g r2 설치 1/5 CentOS 7 에 Oracle 11g r2 설치 1/5 2020.09.09 546
104 CentOS 6.2 에 Oracle 11g 설치 CentOS 6.2 에 Oracle 11g 설치 - 레드햇 계열 리눅스(레드햇 엔터프라이즈, 페도라, CentOS) 동일 오라클 다운로드 오라클은 오라클 사이트에 회원가입후 다운로... file 2020.09.09 515
103 Red Hat Enterprise Linux 7.x에서 Oracle 12c 릴리스 2 그리드... Red Hat Enterprise Linux 7.x에서 Oracle 12c 릴리스 2 그리드 및 RAC 데이터베이스를 구축하는 방법 2020.09.09 509
102 OpenLDAP을 활용한 기반시스템 중앙 인증관리 #1 OpenLDAP을 활용한 기반시스템 중앙 인증관리 #1openldap•Feb 25, 2016 지금까지 프로젝트 진행하면서 기반시스템(svn, jenkins, sonarqube, redmine, nexus...)... 2020.09.07 479
101 OpenLDAP을 활용한 기반시스템 중앙 인증관리 #2 OpenLDAP을 활용한 기반시스템 중앙 인증관리 #2openldap•Mar 11, 2016 OpenLDAP을 활용한 기반시스템 중앙 인증관리 #1에서 기반시스템과 연결을 위한 디렉토리 ... 2020.09.07 493
100 LDAP 클라이언트를 사용하여 Oracle Directory Server Enterpri... LDAP 클라이언트를 사용하여 Oracle Directory Server Enterprise Edition 설정 이 장에서는 LDAP 클라이언트를 지원하도록 Oracle Directory Server Enterprise ... 2020.08.25 496
99 LDAP (Lightweight Directory Access Protocol) LDAP (Lightweight Directory Access Protocol) LDAP는 조직이나, 개체, 그리고 인터넷이나 기업 내의 인트라넷 등 네트웍 상에 있는 파일이나 장치들과 같은 자... 2020.08.25 489
98 Splunk 기능 및 용어 설명 Splunk 기능 및 용어 설명Splunk란 다양한 머신 데이터를 검색, 모니터링 및 경고, 보고 및 분석, 사용자 대시보드 생성이 가능하도록 하는 플랫폼이다. Splunk는... file 2020.08.18 507
97 세상을 바꾸는 Oracle 데이터베이스 - Oracle 변천사 세상을 바꾸는 Oracle 데이터베이스 - Oracle 변천사 file 2020.07.05 510
96 MYSQL 일반적인 오류 해결 정보 MYSQL 일반적인 오류 해결 정보 [참고 사이트] - MySQL 일반적인 오류를 해결하는 유용한 정보들 - [MySQL || MariaDB] System,SQL ERROR 모음 원인 및 해결 총 ... file 2020.07.05 502
95 빅데이터분석 기사 자격증 생긴다...2020년 하반기 취득 가능 빅데이터분석 기사 자격증 생긴다...내년 하반기 취득 가능 정부, '국가기술자격법 시행령 개정령안 국무회의서 의결 빅데이터분석기사 자격증이 새로 생긴다. 검... file 2019.12.23 491
94 QlikTech의 BI솔루션 QlikView QlikView (클릭뷰) QlikView (클릭뷰)를 만든 QlikTech 회사는 전혀 새로운 유형의 BI솔루션 소프트웨어를 공급하는 회사인 QlikTech은 1993년에 스웨덴에서 설... file 2019.12.22 498
93 한림대의료원, 임상정보 빅데이터 분석솔루션 도입 추진 한림대의료원, 임상정보 빅데이터 분석솔루션 도입 추진 한림대학교의료원은 미소정보기술과 임상데이터 분석 솔루션인 'Smart CDW'(Clinical Data Warehouse)를 ... file 2019.12.22 515
92 DW, DM, OLAP의 이해 DW, DM, OLAP의 이해 BI를 구축하기 위해서는 알아야할 몇 가지 개념이 있습니다. 아래의 그림만 잘 이해할 수 있다면, 쉽게 이해가 될것입니다. 공장에서 생산한... file 2019.11.18 541
목록
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7