• 현재 사용률 조회

    select df.tablespace_name "Tablespace",

    round(df.TBS_byte /1048576,2) "Total(MB)",

    round((df.TBS_byte - fs.Free_byte)/1048576,2) "Used(MB)",

    round(fs.Free_byte /1048576,2) "Free(MB)",

    round((fs.Free_byte/df.TBS_byte) *100,0) "Free(%)",

    fs.pieces "Pieces",

    round(fs.Max_free /1048576,2) "MaxFree(MB)",

    db.EXTENT_MANAGEMENT

    from ( select tablespace_name, sum(bytes) TBS_byte

    from dba_data_files group by tablespace_name ) df,

    ( select tablespace_name, max(bytes) Max_free, sum(bytes) Free_byte, count(*) pieces

    from dba_free_space group by tablespace_name ) fs,

    ( select tablespace_name, initial_extent, next_extent,EXTENT_MANAGEMENT

    from dba_tablespaces ) db

    where df.tablespace_name = db.tablespace_name

    and df.tablespace_name = fs.tablespace_name(+)

    order by 5

    /

       

  • 현재 데이터파일 정보 조회(제 경우 TEST1 테이블 스페이스가 test01.dbf ~ test04.dbf로 이루어져 있습니다)

    set lines 300

    set pages 1000

    col file_name for a50

    col tablespace_name for a20

    select FILE_ID,

    FILE_NAME,

    TABLESPACE_NAME,

    AUTOEXTENSIBLE,

    INCREMENT_BY,

    BYTES/1024/1024 "current(M)",

    MAXBYTES/1024/1024 "maxExtend(M)"

    from dba_data_files

    order by 3,4 desc

    /

       

  • 테스트를 위해 각 데이터파일 리사이즈(사이즈 증가)

       

       

  • 데이터파일 별 블록 사용률 조회

    select block_id, blocks from dba_extents where file_id='6' order by block_id;

    select block_id, blocks from dba_extents where file_id='7' order by block_id;

    select block_id, blocks from dba_extents where file_id='8' order by block_id;

    select block_id, blocks from dba_extents where file_id='9' order by block_id;

       

       

       

       

       

  • 사용률 계산

    show parameter block_size

       

    4번에서 조회 된 사항으로 계산을 합니다

    (마지막 block_id * block_size) + (마지막 block * block_size)

    test01.dbf

    ((896 * 8192) + (128 * 8192))/1024/1024 = 8 M

       

    test02.dbf

    ((640 * 8192) + (128 * 8192))/1024/1024 = 6 M

       

    test03.dbf

    ((768 * 8192) + (128 * 8192))/1024/1024 = 7 M

       

    test04.dbf

    ((640 * 8192) + (128 * 8192))/1024/1024 = 6 M

       

  • 데이터파일 리사이즈

       

       

    alter database datafile '/u01/app/oracle/oradata/SOON1004/test01.dbf' resize 8M;

    alter database datafile '/u01/app/oracle/oradata/SOON1004/test02.dbf' resize 6M;

    alter database datafile '/u01/app/oracle/oradata/SOON1004/test03.dbf' resize 7M;

    alter database datafile '/u01/app/oracle/oradata/SOON1004/test04.dbf' resize 6M;

       

       

    해당 사용률 보다 낮게 리사이즈 시 에러가 발생합니다.

       

  • 확인

       

       

  • 블럭 단위로 사용률을 조회 해 resize 하는 방법이지만 실제 사용하는 사이즈 보다 줄지 않음.

사업자 정보 표시
(주)블루원 | 김홍태 | 서울특별시 용산구 원효로 4가 135 금홍 2빌딩 | 사업자 등록번호 : 106-86-76684 | TEL : 02-3272-7200 | Mail : support_ora@blueone.co.kr | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기

'DB - ORACLE > Oracle DB Admin ' 카테고리의 다른 글

Single DB(Filesystem) 정지 및 기동 절차  (0) 2015.12.01
리두그룹 추가/삭제(STANDBY)  (0) 2015.12.01
Oracle Database 한국어 문서 목록  (0) 2015.11.20
Oracle ACS 교육 신청  (0) 2015.11.12
ORACLE RMAN 의 개요  (0) 2015.11.06

+ Recent posts