1. 새로운 undo tablespace를 다음과 같이 생성한다.
CREATE UNDO TABLESPACE UNDOTBS2
DATAFILE '/home/oradata/undotbs.dbf' SIZE 100M;
2. undo tablespace의 이름을 변경하려면 다음과 같이 실행한다.
ALTER SYSTEM SET UNDO_TABLESPACE = UNDOTBS2;
3. 기존에 사용하던 undo tablespace를 drop 한다.
DROP TABLESPACE UNDOTBS1;
4. spfile이 아니고 initSID.ora file을 사용하는 경우에는 initSID.ora
file에 undo_tablespace parameter의 값을 새로운 undotbs2로 변경시킨다.
Example
-----------
undo_tablespace string UNDOTBS
2. UNDOTBS와 대체할 새로운 undo tablespace를 생성한다.
그때 아래와 같이 자동으로 늘어나되, maximum size를 지정할 수 있다.
SQL> create undo tablespace undotbs2
2 datafile '/home/oradata/undotbs2.dbf' size 10m
3 autoextend on maxsize 100m;
3. 생성된 undo tablespace를 확인한다.
SQL> select tablespace_name, contents, extent_management
2 from dba_tablespaces
3 where contents = 'UNDO';
TABLESPACE_NAME CONTENTS EXTENT_MAN
---------
UNDOTBS UNDO LOCAL
4. undo tablespace에 설정된 rollback segment를 확인한다.
SQL> select segment_name, tablespace_name, status
2 from dba_rollback_segs
3 order by 2;
SEGMENT_NAME TABLESPACE_NAME STATUS
------------------------------
SYSTEM SYSTEM ONLINE
5. 새로운 undo tablespace를 지정한다.
SQL> alter system set undo_tablespace = undotbs2;
위와 같이 실행한 후에 4번의 sql을 다시 실행해 보면 이번에는
undotbs 의 rollback segment들이 모두 offline되고 undotbs2 의
rollback segment 들은 online된 것을 볼 수 있다.
6. 기존의 undo tablespace를 drop한다.
SQL> drop tablespace undotbs;
7. spfile이 아닌 initSID.ora를 사용하는 경우는 initSID.ora file에
undo_tablespace parameter의 값을 해당 tablespace, 여기서는
undotbs2로 변경시켜 둔다.
'broko Blog!' 카테고리의 다른 글
datafile & tablespace 정보 확인 (0) | 2016.02.18 |
---|---|
테이블 스페이스 삭제 (0) | 2016.02.18 |
사용자 비밀번호 초기화 (0) | 2016.02.18 |
USER 락(LOCK) 해제 쿼리 (0) | 2016.02.18 |
crontab 사용 권한이 없습니다. (0) | 2016.02.18 |