현상
Tibero Studio와 같은 모니터링 툴에서 tablespace 사용량이 100%로 조회되는 현상에 대해 설명합니다.
원인
현재 할당된 file size를 모두 사용한 경우, autoextend on 상태에서 max size까지 여유가 있는 상황에서 Used_Percent가 100%로 보입니다.
autoextend 기능이 켜져 있으면 일정 사이즈에 도달 후 EXTENT를 할당받아 운영됩니다.
해결
1.
syslog에 tablespace 부족 에러 발생여부 확인
21004 에러가 발생하면 datafile 추가, datafile autoextend on 설정 등 해당 tablespace에 대한 free 영역 확보가 필요합니다.
THROW. ec=ERROR_TX_CANT_ALLOC_EXT(-21004) [ No more extent available in tablespace 'tablespace name'.]
SQL
복사
2.
datafile autoextend on/off 확인
SQL> SELECT FILE_NAME, TABLESPACE_NAME, AUTOEXTENSIBLE FROM DBA_DATAFILES;
SQL
복사
•
autoextend on 상태에서 max size까지 여유가 있다면 별도 조치는 필요하지 않습니다.
다만, autoextend on 상태일 때 file 확장이 자주 일어나지 않도록 환경에 맞게 설정이 필요합니다.
•
autoextend off 상태라면 on하거나 disk 가용 용량에 맞게 datafile 추가가 필요합니다.
참고
아래와 같은 방법으로 datafile을 추가할 수 있습니다.
#. 데이터파일 추가
SQL> ALTER TABLESPACE [테이블스페이스 명] ADD DATAFILE '[데이터파일 경로]' SIZE [SIZE] M|G AUTOEXTEND OFF;
ex) ALTER TABLESPACE TS_TEST add DATAFILE '/tbdata/system02/data02.dtf' SIZE 30G AUTOEXTEND OFF;
SQL
복사