ウェブサイト検索

Linux で MySQL データベースのサイズを確認する方法


この記事では、MySQL シェルを介してMySQL/MariaDB データベースとテーブルのサイズを確認する方法を説明します。ディスク上のデータベース ファイルの実際のサイズと、データベース内に存在するデータのサイズを確認する方法を学習します。

こちらもお読みください: Linux でのデータベース管理のための 20 の MySQL (Mysqladmin) コマンド

デフォルトでは、MySQL/MariaDB はすべてのデータをファイル システムに保存します。データベース上に存在するデータのサイズは、後で説明するディスク上の Mysql データの実際のサイズとは異なる場合があります。

さらに、MySQL はinformation_schema 仮想データベースを使用して、データベースやその他の設定に関する情報を保存します。これにクエリを実行して、図に示すようにデータベースとそのテーブルのサイズに関する情報を収集できます。

mysql -u root -p
MariaDB [(none)]> SELECT table_schema AS "Database Name", 
ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size in (MB)" 
FROM information_schema.TABLES 
GROUP BY table_schema; 

rcubemail という単一の MySQL データベースのサイズを確認するには (データベース内のすべてのテーブルのサイズが表示されます)、次の mysql クエリを使用します。

MariaDB [(none)]> SELECT table_name AS "Table Name",
ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size in (MB)"
FROM information_schema.TABLES
WHERE table_schema = "rcubemail"
ORDER BY (data_length + index_length) DESC;

最後に、ディスク (ファイルシステム) 上のすべての MySQL データベース ファイルの実際のサイズを確認するには、以下の du コマンドを実行します。

du -h /var/lib/mysql

以下の MySQL 関連記事もお読みください。

  1. Linux で MySQL のパフォーマンスを監視するための 4 つの便利なコマンドライン ツール
  2. 12 Linux 向けの MySQL/MariaDB セキュリティのベスト プラクティス

このトピックに関して共有したい質問や追加のアイデアがある場合は、以下のフィードバック フォームを使用してください。