1. 테이블 스페이스 데이터 위치 확인합니다. (tablespace)
sql>
SELECT T.NAME, D.STATUS, D.NAME
FROM V$TABLESPACE T, V$DATAFILE D
WHERE T.TS# = D.TS#
2. 사용자 확인 (user)
sql>SELECT tablespace_name FROM dba_tablespaces
3. export 백업
D:\>EXP 아이디/패스워드@SID file='백업받을파일명'.dmp
1. 사용자 및 테이블 스페이스 확인. ( 있으면 삭제 )
* User 접속으로 인하여 삭제 안될때 확인 :
SELECT sid, serial#
FROM v$session
WHERE username = '사용자'
sql> DROP USER 사용자 CASCADE
sql> DROP TABLESPACE 사용자테이블스페이스데이터 INCLUDING CONTENTS
sql > DROP TABLESPACE 사용자테이블스페이스인덱스 INCLUDING CONTENTS
sql> DROP TABLESPACE 사용자테이블스페이스temp저장소 INCLUDING CONTENTS
2. 테이블스페이스 dbf 확인 ( 있으면 삭제 )
sql> SELECT T.NAME, D.STATUS, D.NAME
FROM V$TABLESPACE T, V$DATAFILE D
WHERE T.TS# = D.TS#
3. 테이블스페이스 생성
sql> CREATE TABLESPACE 사용자테이블스페이스데이터 DATAFILE '경로/파일이름.dbf' SIZE 300 AUTOEXTEND ON
sql > CREATE TABLESPACE 사용자테이블스페이스인덱스 DATAFILE '경로/파일이름.dbf' SIZE 300 AUTOEXTEND ON
sql> CREATE TABLESPACE 사용자테이블스페이스temp저장소 DATAFILE '경로/파일이름.dbf' SIZE 300 AUTOEXTEND ON
4. 사용자 생성
sql> CREATE USER 사용자 IDENTIFIED BY 패스워드 DEFAULT TABLESPACE 사용자테이블스페이스데이터 TEMPORARY TABLESPACE 사용자테이블스페이스temp저장소
5. 사용자 권한
sql> GRANT CONNECT, RESOURCE, EXP_FULL_DATABASE, IMP_FULL_DATABASE TO 사용자
6. import
D:\> imp 사용자/패스워드@SID file='데이터올릴파일명'.dmp full=y ignore=y
다음과 같이 사용자 권한을 주어야 만이 imp/exp 할 수 있습니다.
( import 시에 옵션 ignore = y 속성은 imp 시에
IMP-00003 : ORALCE error 959 encountered
ORA-00959 : tablespace 테이블스페이스명 does not exist
하는 에러를 무시한다는 옵션이다.
기존의 테이블스페이스가 없어 발생하는 문제이기 떄문에 그냥 어차피 무시해 버리자는 ignore 옵션 -ㅅ-;;;)
'DataBase > Oracle SQL' 카테고리의 다른 글
[oracle] lock , alter session, 현재 접속자의 SQL 분석 (0) | 2011.01.19 |
---|---|
[oracle] Ampersand(앰퍼센드) 나 특수문자를 갖는 데이터 insert 하는 방법 (0) | 2011.01.19 |
[Oracle] NLS_LANG CharacterSet 변경 (1) | 2010.12.06 |
[Oracle] ORACLE JOIN (0) | 2010.11.16 |
[SQL] 제약조건 삭제 (0) | 2010.08.24 |