Oracle Sqlplus-4.ROLLBACK SEGMENT

Oracle Sqlplus-4.ROLLBACK SEGMENT에 대해 알아보겠습니다.

ROLLBACK은 COMMIT전에 유효하며 현재의 진행중인 상태를 진행전의 상태로 복원시킨다.

(1) rollback segment갯수를 확인한다.

SQL> select count(*) 2 from dba_rollback_segs; COUNT(*)——— 18
SQL> select * 2* from dba_rollback_segs;

(2) system rollback segment의 크기를 확인한다.(1block=2048byte)

SQL>select blocks, bytes
2 from dba_segments
3 where segment_name=’SYSTEM’
4* and segment_type=’ROLLBACK’;
BLOCKS BYTES
——— ———
100 204800

(3) rollback segment조정

system tables에 rollback segment를 추가한다.

SQL> select segment_name from dba_rollback_segs
;SEGMENT_NAME
——————————
SYSTEMRB_TEMPRB1RB2RB3RB4RB5
7 개의 행이 선택되었습니다.
SQL> create rollback segment dul_rrbs tablespace system;
롤백 세그멘트가 생성되었습니다.
SQL> select segment_name from dba_rollback_segs;
SEGMENT_NAME
——————————
SYSTEMRB_TEMPRB1RB2RB3RB4RB5DUL_RRBS
8 개의 행이 선택되었습니다.

현재 dul_rbs의 status를 확인한다.

SQL> select * 2* from dba_rollback_segs;
SQL> select * from dba_rollback_segs;
SQL> drop rollback segment dul_rrbs;
drop rollback segment dul_rrbs
*
라인 1 에 오류:ORA-01545: 롤백 세그먼트 ‘DUL_RRBS’ 는 사용할 수 없습니다
SQL> alter rollback segment dul_rrbs offline;
롤백 세그멘트가 변경되었습니다.
SQL> drop rollback segment dul_rrbs;
롤백 세그멘트가 삭제되었습니다.
SQL> select * from dba_rollback_segs;
SQL> select count(*) 2 from dba_rollback_segs;
COUNT(*)
———
18
SQL> select * 2* from dba_rollback_segs;

system rollback segment의 크기를 확인한다.(1block=2048byte)

SQL>select blocks, bytes
2 from dba_segments
3 where segment_name=’SYSTEM’
4* and segment_type=’ROLLBACK’
BLOCKS BYTES
——— ———
100 204800

db에 존재하는 segment의 유형 list를 조회한다.

SQL> select distinct segment_type
2 from dba_segments;
SEGMENT_TYPE
—————–
CACHE
CLUSTER
INDEX
ROLLBACK
TABLE


게시됨

카테고리

작성자

댓글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다