문서의 이전 판입니다!
export & import 스크립트
● sys 또는 system 계정정보 없이 간단하게 sysdba권한 접속하기 → sqlplus “/as sysdba” ※ 권한에 제한이 있을 수 있음.
※ 아래 내용에서 C:\> 부분은 명령프롬프트에서 실행. SQL> 부분은 sqlplus “/as sysdba”로 접속하여 실행해야 하는 명령문.
Export ● 일반 EXPDP 명령 → C:\ > EXPDP h552/h552 schemas=h552 DUMPFILE=H552_11G.DMP LOGFILE=H552_11G.log
● 11g이상에서 import할 대상이 하위 버전일 경우의 Export명령문(import대상 오라클의 버전 명시) → C:\> EXPDP h552/h552 schemas=h552 DUMPFILE=H552_10G.DMP LOGFILE=H552_10G.log VERSION=10.2 ※ EXPDP, IMPDP 명령문 경우 Oracle 10 부터 사용가능
※ EXPDP 사용시 덤프파일 생성 경로 확인 → SQL> SELECT DIRECTORY_PATH FROM DBA_DIRECTORIES WHERE DIRECTORY_NAME = 'DATA_PUMP_DIR'; • EXPDP 사용시 조회된 위치에 export한 덤프파일이 생성된다. • IMPDP 사용시에도 해당 경로에 덤프파일을 옮겨놓고 import해야 한다.
● Oracle 9 이하에서 Export(유저별) → C:\> exp userid=h552/h552 owner=h552 file=’D:\H552_11G.DMP’ log=’D:\H552_11G.LOG’
● Oracle 9 이하에서 Export(DB전체) → C:\> exp userid=h552/h552 file=’D:\H552_11G.DMP’ log=’D:\H552_11G.LOG’ full=y
Import ● 유저삭제 → SQL> DROP USER h551 CASCADE;
● 'H5_DATA' 테이블스페이스 삭제(파일포함) → SQL> DROP TABLESPACE H5_DATA INCLUDING CONTENTS AND DATAFILES;
● 'H5_INDX' 테이블스페이스 삭제(파일포함) → SQL> DROP TABLESPACE H5_INDX INCLUDING CONTENTS AND DATAFILES;
※ 기존 tablepace H5_DATA, H5_INDX(H5_IDX)를 확인 후 Import할 곳에 생성해야 한다. → SQL> SELECT t.name ,d.name FROM V$DATAFILE d, V$TABLESPACE t WHERE t.ts#=d.ts#; - 조회시 테이블스페이스 이름 및 파일경로 확인가능
● 'H5_DATA' 테이블스페이스 생성 – 데이터 파일 경로는 수정 필요 → SQL> CREATE TABLESPACE H5_DATA
DATAFILE 'C:\app\virtual\oradata\orcl\H5_DATA.dbf' SIZE 1024M AUTOEXTEND ON NEXT 100M;
● 'H5_INDX' 테이블스페이스 생성 → SQL> CREATE TABLESPACE H5_INDX
DATAFILE 'C:\app\virtual\oradata\orcl\H5_INDX.dbf' SIZE 1024M AUTOEXTEND ON NEXT 100M;
● 원하는 이름의 유저생성 및 기본 테이블스페이스 지정 → SQL> CREATE USER c##h551 IDENTIFIED BY win1234 DEFAULT TABLESPACE H5_DATA TEMPORARY TABLESPACE temp;
● 유저 권한 부여 → SQL> GRANT CONNECT, RESOURCE, DBA TO c##h551;
● 암호화 권한 부여 → SQL> GRANT EXECUTE ON DBMS_OBFUSCATION_TOOLKIT TO c##h551;
● 암호화 권한 부여 → SQL> GRANT EXECUTE ON DBMS_CRYPTO TO c##h551;
● 유저 unlock → SQL> ALTER USER c##h551 ACCOUNT UNLOCK ;
※ IMPDP 사용 전 경로 확인 → SQL> SELECT DIRECTORY_PATH FROM DBA_DIRECTORIES WHERE DIRECTORY_NAME = 'DATA_PUMP_DIR'; • 해당 경로에 덤프파일을 옮겨놓고 import해야 한다
● Import 명령문 ※ IMPDP 경우 Oracle 10 부터 사용가능 → C:\> IMPDP h551/h551 DUMPFILE=H552_11G.DMP LOGFILE=H552_11G.log REMAP_SCHEMA=h552:h551 REMAP_TABLESPACE=(H5_DATA:H5_DATA, H5_INDX:H5_INDX) ※ REMAP_SCHEMA 와 REMAP_TABLESPACE 의 경우 EXPDP 환경과 같다(유저와 테이블스페이스 변경이 없음)면 굳이 사용하지 않아도 됨.
● Oracle 9 이하 imp userid=h552/h552 fromuser=h552 touser=h551 file=D:\H552_11G.DMP log=D:\H552_11G.LOG