MySQL で各データベースのサイズをチェックする方法

MySQL のデータベースのサイズを確認する方法について。

データベースサイズを調べるクエリについてはなんだか定期的に調べている気がするので、メモとして残しておきます。

SELECT table_schema "Name",
  round(sum(data_length + index_length) / 1024 / 1024, 2) "Database Size (MB)",
  round(sum(data_free) / 1024 / 1024, 2) "Free Space (MB)"
  FROM information_schema.TABLES
  GROUP BY table_schema;

こちらを実行すると次のような形でデータベースのサイズが一覧で表示されます。

+--------------------+--------------------+-----------------+
| Name               | Database Size (MB) | Free Space (MB) |
+--------------------+--------------------+-----------------+
| db_a               |             104.34 |            0.00 |
| db_b               |             303.31 |            0.00 |
| db_c               |              11.61 |            0.00 |
+--------------------+--------------------+-----------------+