관리 메뉴

피터의 개발이야기

[Mysql] 테이블별 용량체크 본문

Database/MySQL

[Mysql] 테이블별 용량체크

기록하는 백앤드개발자 2020. 11. 26. 00:00
반응형

시스템을 운영하면서 데이터가 쌓이게 된다.

다량의 데이터 조회 속도를 높이기 위해 인덱스를 사용하지만,

테이블의 데이터가 많아지면 인덱스 자체의 물리적인 용량이 증가라한다.

인덱스 조차도 허용된 메모리를 넘는 어느 순간 그 테이블 조회 속도는 현저히 느려진다.

큰 테이블은 월별 혹은 일자별로 나누어 관리하는 것이 바람직하다.

 

내가 쓰고 있는 테이블별 용량 확인 쿼리이다.

############################################################
# 테이블별 용량
SELECT table_name,
       table_rows,
       round(data_length / (1024 * 1024 * 1024), 2)  as 'DATA_SIZE(GB)',
       round(index_length / (1024 * 1024 * 1024), 2) as 'INDEX_SIZE(GB)'
FROM information_schema.TABLES
where table_schema = 'my_schema'
GROUP BY table_name
ORDER BY data_length DESC
LIMIT 10;

 

반응형
Comments