Oracle/Admin2009. 12. 15. 16:05
SQL*Loader

외부의 데이터 파일의 데이터를 데이터베이스의 테이블로 넣기 위한 유틸리티
일종의 insert 자동발생기로 생각하면 됨

datafile과 control file이 있어야 함.
datafile에 맞는 control file(text)을 잘 만드는 것이 실력이다.

control file은 로딩될 데이터의 위치와 파일명, 데이터의 포맷 등이 기술되어 있다.

data file(a.txt) 의 내용

7782 CLARK      MANAGER   7839  2572.50          10
7839 KING       PRESIDENT       5500.00          10
7934 MILLER     CLERK     7782   920.00          10
7566 JONES      MANAGER   7839  3123.75          20
7499 ALLEN      SALESMAN  7698  1600.00   300.00 30
7654 MARTIN     SALESMAN  7698  1312.50  1400.00 30
7658 CHAN       ANALYST   7566  3450.00          20
7654 MARTIN     SALESMAN  7698  1312.50  1400.00 30

control file(a.ctl)의 내용

 LOAD DATA
 INFILE 'a.txt'
 INTO TABLE t1
      (empno         POSITION(01:04)   INTEGER EXTERNAL,
       ename         POSITION(06:15)   CHAR,
       job           POSITION(17:25)   CHAR,
       mgr           POSITION(27:30)   INTEGER EXTERNAL,
       sal           POSITION(32:39)   DECIMAL EXTERNAL,
       comm          POSITION(41:48)   DECIMAL EXTERNAL,
       deptno        POSITION(50:51)   INTEGER EXTERNAL)

 SQL*Loader를 이용하여 데이터 적재

OS] sqlldr phil/phil control=a.ctl direct=y

참조 : http://download.oracle.com/docs/cd/B10501_01/server.920/a96652/ch10.htm#1006795
           http://download.oracle.com/docs/cd/B10501_01/server.920/a96652/ch10.htm#1007588

Export
: 데이터 추출을 할 수 있게 하는 유틸리티

OS] exp test/test file=t2.dmp tables=t2
OS] ls t2.dmp


Import
: 데이터 적재를 할 수 있게 하는 유틸리티

OS] imp test/test file=t2.dmp tables=t2
OS] sqlplus test/test
SQL> select * from t2;

cf)
imp test/test file=t2.dmp show=y


data pump
: 10g new feature이다.
  서버 내부에 job, process가 일을 함.
 
10gR2 메뉴얼에서 확인할 것

OS] 선생님 자료 참고할 것.

OS] exp    test/test@jgh_db file=t2.dmp tables=t2 { full=y}                       -- 세션이 끊어지면 작업도 중단됨
OS] expdp test/test@jgh_db SCHEMA=hr DIRECTORY=dpump   job_name=obama
-- 서버안에 job이 만들어지고, 서버 안에 파일이 만들어짐, 세션이 끊어져도 서버 내부에서 일을 끝날때까지 계속함
OS] expdp test/test@jgh_db attach=obama

OS] expdp hr/hr parfile=hr.par                       -- 설정 내용을 파라미터 파일(.par)에 기술할 것.


expdp : 데이터 펌프 export
impdp : 데이터 펌프 import

impdp hr/hr tables=employees directory

ETL (Extraction Transform Loading)

테이블 스페이스를 다 추출하고(TTS)
테이블 스페이스의 meta data만 뽑는다.

SQL> select * from dba_datapump_jobs

external table
- SQL*Loader를 이용한 external table 9i
- Data pump를 이용한 external table 10g등장.
   pupulation = unload

'Oracle > Admin' 카테고리의 다른 글

Managing Storage  (0) 2010.01.06
Managing Schema Objects  (0) 2009.12.30
Backup and Recovery  (0) 2009.12.10
Optimizer Statistics & Performance Statistics  (0) 2009.12.10
Performance Management  (0) 2009.12.08
Posted by 자수성가한 부자