"데이터 Export 와 Import"의 두 판 사이의 차이
DB CAFE
(→EXPORT 옵션) |
(→IMPORT) |
||
131번째 줄: | 131번째 줄: | ||
== IMPORT 옵션 == | == IMPORT 옵션 == | ||
+ | |||
{{틀:고지상자2 | {{틀:고지상자2 | ||
− | |제목=데이터 | + | |제목=데이터 EXPORT 옵션 |
|내용=<pre> | |내용=<pre> | ||
* userid | * userid | ||
150번째 줄: | 151번째 줄: | ||
* commit | * commit | ||
* parfile | * parfile | ||
− | |||
</pre> | </pre> | ||
− | | | + | |제목배경색=#708090 |
+ | |제목색상=#FFFFFF | ||
+ | |아이콘색= | ||
|아이콘이름=build | |아이콘이름=build | ||
}} | }} | ||
− | |||
== DB전체 입력 == | == DB전체 입력 == | ||
* conventional Path 로 받기 | * conventional Path 로 받기 |
2020년 1월 2일 (목) 13:30 판
thumb_up 추천메뉴 바로가기
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
1 EXPORT[편집]
1.1 EXPORT 옵션[편집]
build 데이터 EXPORT 옵션
* userid * buffer * file * grants * indexes * rows * constraints * compress * full * owner * tables * tablespaces * recordlength * inctype * record * parfile
1.2 DB전체 백업[편집]
- conventional Path 로 받기
exp system/oracle full=y log=full_log.log file=/home/oracle/full_test001.dmp
- Direct Path 로 받기
exp system/oracle full=y log=full_log.log file=/home/oracle/full_test001.dmp '''direct=y'''
1.3 파일 분할 백업[편집]
exp system/oracle full=y
'''file=(/backup/test_001.dmp,\
/backup/test_002.dmp,\
/backup/test_003.dmp,\
/backup/test_004.dmp)\'''
filesize=100M
log=full_log.log direct=y
1.4 해당 테이블 스페이스만 백업[편집]
exp system/oracle full=y log=full_log.log file=/home/oracle/full_test001.dmp '''tablespaces=(example,undotbsl)'''
1.5 여러 사용자 백업[편집]
exp system/oracle file=/home/oracle/full_test001.dmp '''owner=(scott,tiger)'''
1.6 일부 테이블 백업[편집]
- 버퍼 10메가
- Direct Path
exp system/oracle full=y log=full_log.log file=/home/oracle/full_test001.dmp buffer=20140000 direct=y '''tables=(example,undotbsl)'''
1.7 일반사용자로 Full Backup[편집]
- 권한확인
SELECT * FROM DBA_ROLE_PRIVS WHERE GRANTEE = 'SCOTT';
- 권한부여
GRANT EXP_FULL_DATABASE TO SCOTT;
- DBA권한을 부여 해도 됨(권장하지 않음)
1.8 파라메터를 이용하여 백업[편집]
exp system/oracle '''parfile=para_file.txt'''
- para_file.txt file=/data/test09.dmp full=y direct=y query="where job='xxx' and ... " ....
1.9 SQL적용하여 일부데이터만 백업[편집]
- parfile 옵션을 사용하여 파라메터로 사용하면 편리
exp scott/tiger '''query=\"where ename like \'F%\'\"''' tables=emp file =/data/emp.dmp
1.10 DBMS_DATAPUMP 패키지/프로시져 이용 EXPORT 백업[편집]
-- 1.테이블 DUMP EXPORT 스크립트
DECLARE
hdnl NUMBER;
v_open_date VARCHAR2(50) := '20200102'; -- 백업시간
v_job_name VARCHAR2(50) := 'EXP_XXXWEB_OPEN'; -- 잡이름
BEGIN
hdnl := DBMS_DATAPUMP.OPEN( operation => 'EXPORT', job_mode => 'SCHEMA', job_name=>v_job_name||'_'||v_open_date);
DBMS_DATAPUMP.ADD_FILE( handle => hdnl, filename => v_job_name||'_'||v_open_date||'_01.EXP', directory => 'DATA_PUMP_DIR2', filetype => dbms_datapump.ku$_file_type_dump_file ,reusefile=>1);
DBMS_DATAPUMP.ADD_FILE( handle => hdnl, filename => v_job_name||'_'||v_open_date||'_01.LOG', directory => 'DATA_PUMP_DIR2', filetype => dbms_datapump.ku$_file_type_log_file ,reusefile=>1);
-- 스키마 정보
DBMS_DATAPUMP.METADATA_FILTER(handle => hdnl,
name => 'SCHEMA_EXPR',
value => ' IN (''XXX'',''WEB'')'
);
DBMS_DATAPUMP.START_JOB(hdnl);
END;
2 IMPORT[편집]
- DDL,DML 사용으로 인하여 REDO LOG 와 UNDO SEGMENT사용
- import시 큰 undo Tablespace를 준비하여 작업
- commit=y 옵션으로 작업하여 array 단위로 commit 수행
- DBA 백업 받은 export 파일은 반드시 DBA로 import 해야 함(IMP-00013 에러 발생)
2.1 IMPORT 옵션[편집]
build 데이터 EXPORT 옵션
* userid * buffer * file * show * grants * indexes * rows * full * fromuser * touser * tables * tablespaces * recordlength * inctype * commit * parfile
2.2 DB전체 입력[편집]
- conventional Path 로 받기
imp system/oracle full=y log=full_log.log file=/home/oracle/full_test001.dmp
2.3 일부 사용자만 입력 ==[편집]
imp system/oracle file=/home/oracle/full_test001.dmp '''fromuser=(scott,tiger)''' tables=test01 ignore=y
2.4 테이블 소유자를 변경하여 입력 ==[편집]
imp system/oracle file=/home/oracle/full_test001.dmp '''fromuser=scott''' touser=tiger ignore=y
2.5 DDL만 추출하기 ==[편집]
- show=y 옵션사용 방법 - 로그에 저장하여 ddl 편집
- indexfile 옵션을 사용하는 방법
imp system/oracle file=/data/test02.dmp full=y show=y log=scott_ddl.sql
2.6 import 시 테이블과 index 분리 ==[편집]
- import시 indexes=n 옵션으로 import후 인덱스 별도 생성
2.7 인덱스 파일만 별도 추출 ==[편집]
imp system/oracle file=/data/test02.dmp indexfile=scott_index.sql full=y