mysqlでinformation_schemaを活用したSQL

mysqlでのシステム運用時にテーブルごとのデータサイズが知りたい場合


SELECT
TABLE_SCHEMA,
TABLE_NAME,
CONCAT(
TRUNCATE((DATA_LENGTH / 1024 / 1024) * TABLE_ROWS , 2) , ' MB'
) AS DATA_SIZE
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='スキーマ名'
AND TABLE_NAME LIKE 'テーブル名';

とかってしてると各テーブルをMBサイズで表示してくれてかなり便利

あとはVIEWしとけば呼び出しもらくちん

メンテナンスとかの目安になるはず