말랑말랑제리스타일

오라클 DB 테이블 크기 확인 쿼리 본문

데이터베이스/Oracle SQL

오라클 DB 테이블 크기 확인 쿼리

제리제리 2021. 11. 2. 11:48

오라클 DB를 사용하다보면 테이블 크기가 커지고 속도가 느려질때를 체감하게 되는데

이때 오라클 DB에서 사용할 수 있는 테이블 크기를 확인 가능한 쿼리를 알려드리려고 합니다

 

참고로 DBA 테이블이라 권한이 충분하지 않다면 확인이 불가능할 수 있지만

따로 권한을 분류하지 않은 DB나 개인 목적의 DB인 경우 아래 쿼리로 테이블의 크기를 확인할 수 있습니다

 

 SELECT OWNER, SEGMENT_NAME, BYTES
 FROM DBA_SEGMENTS 
 WHERE SEGMENT_TYPE='TABLE'  
 ORDER BY 3 DESC;

위에서 활용한 DBA_SEGMENTS 테이블에는 테이블 뿐만 아니라

INDEX, CLUSTER 등의 정보도 나와있기 때문에 TABLE로 SEGMENT_TYPE을 걸어주고

OWNER는 DB 유저 명, SEGMENT_NAME은 테이블 명, BYTES는 테이블의 물리적 크기를 알려줍니다

ORDER BY 3 DESC는 테이블을 크기순으로 역순 출력하게 해주겠죠

 

다음으로 테이블 크기를 BYTE 단위가 아닌 KB나 MB 단위로 출력하고싶다면

쿼리의 SELECT 구문에서 BYTES 대신 BYTES / 1024로 단위를 환산해줄 수 있겠죠

 

Comments