본문 바로가기

개발(합니다)/DB

[MySql] DB 용량 확인하는 방법

반응형

서버를 이용하다보면 서버의 용량을 많이 사용하는 DB에 사용량과 여유량을 확인 해야 합니다.

정기적으로 데이터를 백업해주고 여유공간을 확보해주저야지 서비스가 중단되는 이슈를 막을 수 있습니다.

DB에서 사용하고 있는 용량, 데이터베이스별, 테이블별을 포스팅합니다.

 

 

 

전체 용량 확인

SELECT SUM(data_length+index_length)/1024/1024 used_MB, SUM(data_free)/1024/1024 free_MB FROM information_schema.tables;

데이터베이스별 용량 확인

SELECT table_schema "Database Name",
SUM(data_length + index_length) / 1024 / 1024 "Size(MB)"
FROM information_schema.TABLES
GROUP BY table_schema;

 

테이블별 용량 확인

SELECT
concat(table_schema,'.',table_name),
concat(round(data_length/(1024*1024*1024),2),'G') DATA,
concat(round(index_length/(1024*1024*1024),2),'G') idx,
concat(round((data_length+index_length)/(1024*1024*1024),2),'G') total_size,
round(index_length/data_length,2) idxfrac
FROM information_schema.TABLES
WHERE table_rows is not null;

 

반응형