안녕하세요, 다들 새해 복 많이 받으십시오. 저는 현아남푠 입니다.
궁금한점이 있어서 이렇게 글을 올립니다.
제가 실무로 데이터베이스를 사용하는데 테이블스페이스의 데이터파일 용량이 꽉 차서 용량을 늘렸습니다.
But, 얼마 후에 또 용량이 꽉 차는지 계산하기 위해 테이블에 row를 추가해주었는데 여유용량이 변하지 않았습니다.
용량 구하는 쿼리문은 아래처럼 하였습니다.
select a.TABLESPACE_NAME as "테이블스페이스", round( sum(a.BYTES) ) || 'Byte' as "전체", round( sum(b.FREES) ) || 'Byte' as "여유" from ( select FILE_ID, TABLESPACE_NAME, SUM(BYTES) BYTES from DBA_DATA_FILES -- 전체용량 group by FILE_ID, TABLESPACE_NAME) a, ( select TABLESPACE_NAME, FILE_ID, SUM(BYTES) FREES from DBA_FREE_SPACE -- 여유용량 group by TABLESPACE_NAME, FILE_ID ) b where a.TABLESPACE_NAME = b.TABLESPACE_NAME and a.FILE_ID = b.FILE_ID group by a.TABLESPACE_NAME; |
1 row 부터 시작하여 50,000 row 정도 데이터를 insert 하여도..
저 쿼리문을 입력하면 여유 용량이 변하지 않습니다.
이게 안되면 그냥 data type을 더해서 용량 계산하려고 하는데 data type더한 크기가
그대로 저장되는지도 잘 모르겠고..ㅜㅠ
좀 도와 주십시오~
감사합니다.
현아남푠 올림.
ps) data type은 아래와 같습니다.
INTEGER |
VARCHAR2(16 Byte) |
DATE |
INTEGER |
CHAR(3 Byte) |
INTEGER |
INTEGER |
INTEGER |
INTEGER |
CHAR(1 Byte) |
INTEGER |
INTEGER |