1. ホーム
  2. mysql

[解決済み] MySQLデータベースのテーブルのサイズを取得する方法は?

2022-03-16 15:28:24

質問

このクエリを実行して、MySQLデータベースのすべてのテーブルのサイズを取得することができます。

show table status from myDatabaseName;

結果を理解するための手助けが欲しいです。私は、最も大きなサイズのテーブルを探しています。

どの列を見ればいいのでしょうか?

どのように解決するのですか?

このクエリを使って、テーブルの大きさを表示することができます(ただし、最初に変数を代入する必要があります)。

SELECT 
    table_name AS `Table`, 
    round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB` 
FROM information_schema.TABLES 
WHERE table_schema = "$DB_NAME"
    AND table_name = "$TABLE_NAME";

またはこのクエリで、すべてのデータベースのすべてのテーブルのサイズを、大きいものから順にリストアップします。

SELECT 
     table_schema as `Database`, 
     table_name AS `Table`, 
     round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB` 
FROM information_schema.TABLES 
ORDER BY (data_length + index_length) DESC;