오라클 DMP 생성및 복원

su - oracle //오라클 계정으로 변경(권한부여 반드시 '-' 사용)

conn sys/as sysdba - 접속

* oracle dump파일 생성
 ./exp system/manager owner=namo_pinetree file='/home/sysoper/namo_pinetree.dmp'


기본적으로 복원하고자 하는 대상이 되는 데이타 베이스의 테이블 스페이스는
export 받은 dump파일의 테이블스페이스와 스키마를 일치시켜야한다.

1. 테이블스페이스 생성
create tablespace sanrimji datafile '/home/oracle/oradata/webhosti/sanrimji.dbf' size 400M AUTOEXTEND ON NEXT 100M MAXSIZE 2000M online

2. 테이블스페이스 사용자생성 (기존 스키마와 동일하게 user명을 세팅한다.)
create user sanrimji identified by "sanrimji" default tablespace sanrimji temporary tablespace temp;

3. 테이블스페이스 권한부여
grant resource, connect to sanrimji;


4. 테이블스페이스 조각모음
alter tablespace sanrimji coalesce;


5. dump Import
./imp userid=system/manager file='/home/oracle/dump/sanrimji.dmp' fromuser=sanrimji touser=sanrimji

* 주석
테이블스페이스 삭제
> drop tablespace sanrimji;

사용자삭제
> drop user sanrimji cascade

coalesce

> extent가 할당/해제되다 보면 테이블스페이스내 free한 extent가 연속적이지 못하게 된다.
이런 것들을 coalesce(합병)해주면 I/O를 줄일 수 있고, 시간또한 절약될 것이다.
보통 coalsce는 백그라운드 프로세스인 SMON(System Monitor)가 자동으로 실행한다.
DBA는 수동으로 'alter tablespace AAA coalesce'로 수동합병을 할 수 있다.


fromuser
> export된 파일의 테이블스페이스 사용자를 넣어준다.
touser
> 현재 복원할 테이블스페이스 사용자를 넣어준다.


sqlplus /nolog
> 권한인증없이 sqlplus에 접속가능하다.

댓글

이 블로그의 인기 게시물

어쩌다 마주친 spring Error

nginx 설정정리

이클립스에서 톰캣 publish할때 에러