전문가를 위한 오라클 데이터베이스 아키텍처 (2014년)
데이터 펌프 언로드 0 0 83,637

by 구루비스터디 데이터 펌프 EXPDP IMPDP [2018.09.27]


데이터 펌프 언로드

  • 오라클 10g 버전부터 EXPDP/IMPDP와 같은 바이너리 포멧으로 데이터를 추출하는 기능을 제공

-- 디렉토리 생성
SQL> create or replace directory tmp as '/tmp';

디렉토리가 생성되었습니다.

-- 데이터를 바이너리 파일로 저장(/tmp/allobjects.dat)
CREATE TABLE ALL_OBJECTS_UNLOAD
ORGANIZATION EXTERNAL
( 
  TYPE ORACLE_DATAPUMP
  DEFAULT DIRECTORY TMP
  LOCATION( 'allobjects.dat')
)
AS
 SELECT * FROM ALL_OBJECTS;

테이블이 생성되었습니다.

-- 바이너리 파일이라 사람이 읽어볼 수 없음
[oracle@mydream demo_dir]$ ls -al /tmp/allobjects.dat
-rw-r----- 1 oracle dba 7450624 12월 30 07:47 /tmp/allobjects.dat


-- 테이블 스크립트 추출
SQL> SELECT DBMS_METADATA.GET_DDL('TABLE', 'ALL_OBJECTS_UNLOAD') FROM DUAL;

DBMS_METADATA.GET_DDL('TABLE','ALL_OBJECTS_UNLOAD')
--------------------------------------------------------------------------------
  CREATE TABLE "GENIE"."ALL_OBJECTS_UNLOAD" 
   (	"OWNER" VARCHAR2(30), 
	"OBJECT_NAME" VARCHAR2(30), 
	"SUBOBJECT_NAME" VARCHAR2(30), 
	"OBJECT_ID" NUMBER, 
	"DATA_OBJECT_ID" NUMBER, 
	"OBJECT_TYPE" VARCHAR2(19), 
	"CREATED" DATE, 
	"LAST_DDL_TIME" DATE, 
	"TIMESTAMP" VARCHAR2(19), 
	"STATUS" VARCHAR2(7), 
	"TEMPORARY" VARCHAR2(1), 
	"GENERATED" VARCHAR2(1), 
	"SECONDARY" VARCHAR2(1), 
	"NAMESPACE" NUMBER, 
	"EDITION_NAME" VARCHAR2(30)
   ) 
   ORGANIZATION EXTERNAL 
    ( TYPE ORACLE_DATAPUMP
      DEFAULT DIRECTORY "TMP"
     
      LOCATION
       ( 'allobjects.dat'
       )
    )
 

-- 데이터를 LOAD해야할 시스템으로 데이터파일(allobjects.dat)을 복사하고 테이블 생성 또는 원하는 테이블에 데이터 입력
CREATE TABLE TEST_TABLE
AS
SELECT * FROM ALL_OBJECTS_UNLOAD;

테이블이 생성되었습니다.

"데이터베이스 스터디모임" 에서 2014년에 "전문가를 위한 오라클 데이터베이스 아키텍처 " 도서를 스터디하면서 정리한 내용 입니다.

- 강좌 URL : http://www.gurubee.net/lecture/4075

- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입