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 |
답글 남기기