mysqlでテーブルのサイズを取得する方法
SHOW TABLE STATUS でもとれるんですが、1テーブルずつしかとれません。
information_schema にあったような気がしたので調べてみたらやっぱりありました。
SELECT table_schema, table_name, data_length, index_length FROM information_schema.tables
table_schema が スキーマ名で、table_name がテーブル名。
SQL なので、WHERE 句を自由に指定できるし、集計するのも簡単。
ただ、 information_schema 自体は SQL 標準なのだけど、data_length や index_length は MYSQL 独自拡張。
案の定、PostgreSQL にはなかった。