勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

MySQLでデータベース単位とテーブル単位のデータサイズ(容量)の調べ方

  MySQL データベース

VPSの各種ファイルを整理している際に「MySQLも不要なデータを削除すればいいんじゃないか」と思い、その際にどのデータベース・テーブルが容量を使用しているのか調べたくなった。Adminerだと「サイズ - 算出」という項目はあるが、これはどうも即時反映されないっぽい(データ削除後等)。なので別の調べ方をメモ。

 

調べ方

データベース単位

SELECT table_schema, SUM(DATA_LENGTH + INDEX_LENGTH) /1024 /1024 AS MB
FROM information_schema.tables
GROUP BY table_schema
ORDER BY SUM(DATA_LENGTH + INDEX_LENGTH) DESC;

テーブル単位

SELECT table_schema, SUM(DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 AS MB
FROM information_schema.tables
WHERE table_schema = '【テーブル名】';

 

所感

参考サイトによるとストアドプロシージャに登録すると便利とのこと。確かにこういったケースがストアドプロシージャの使いどころかもしれない。登録方法は過去記事参照

 - MySQL データベース

  関連記事

MySQLでROW_NUMBER関数を使用してグループ毎に連番を設定する方法

以前にMySQLでオートインクリメントを使用せずにグループ毎に連番を設定する方法 ...

MySQLにてSELECT時にdate型のカラムから干支(十二支)を計算し表示する方法

MySQLにdate型のカラムに誕生年月日が格納されており、そこから干支(十二支 ...

お名前.comのレンタルサーバ(SDサーバ)にMySQLデータのインポートする方法

お名前.comのレンタルサーバにそこそこ大きいサイズのMySQLデータを移行した ...

MySQLのトリガーを使用して特定のテーブルの操作を行った際に別テーブルにログを残す方法

MySQLにトリガーという機能があるらしくどのようなものか調べたところ、事前に「 ...

MySQLで「Uncaught mysqli_sql_exception: BIGINT ~~」エラーの対応方法

MySQLにて「Uncaught mysqli_sql_exception: B ...