db tablespace 공간 문의 0 1 1,106

by 생각하쟈 [DB 기타] [2020.05.15 13:53:49]


1234.JPG (48,038Bytes)

안녕하세요~

저 궁금한점이 한 있는데요

제가 tablespace를 3mb로 잡아놓고, 랜덤 데이터를 막 insert 했어요.

그리고 tablespace가 3mb가 꽉찬거를 확인하고, 해당 테이블 data를 "delete"를 했죠

하지만 여전히 tablespace는 3mb 가 꽉차있었습니다.

하지만 table에 insert는 할수 있었어요.

 

제가 궁금한점은 실제로 사용할수 있는 TABLESPACE공간을 볼수 있을까? 입니다.

사진에서 보는 TABLESPACE 공간은 실제 사용할수 잇는 공간이 아니라 지금까지 사용했던? 공간? 이라고 할수 있잖아요?

궁금증에 질문올렸습니다.

 

감사합니다.

 

사랑합니다.

by ㅇㅇ준 [2020.05.15 14:23:51]

DELETE 를해도 테이블이 차지하는 segment사이즈는 줄어들지 않습니다.shrink 작업 혹은 테이블 재생성 작업을 해주셔야 하겠습니다.

insert가 가능한 이유는 삭제한 공간을 재활용하기 때문입니다

DELETE 로 완전히 비어있는 블록을 제거하고 보시고 싶으시다면..

 

SELECT COUNT(*)
FROM (SELECT SUBSTR(ROWID,1,15) 
        FROM TABLE_NAME
       GROUP BY SUBSTR(ROWID,1,15))

이렇게 수행할 경우 BLOCK COUNT가 됩니다

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입