回答:
このクエリを実行すると、探しているものが表示されます。
SELECT table_schema "DB Name",
ROUND(SUM(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB"
FROM information_schema.tables
GROUP BY table_schema;
このクエリは、より包括的な指示が利用可能なmysqlフォーラムからのものです。
FROM
とGROUP
行の間に追加します。-データベースでwhere table_schema='DATABASE_NAME'
置き換えDATABASE_NAME
ます。
Syntax error: {column title} (double quoted text) is not valid input here.
エラーを吐き出します。列のタイトルは目盛りで囲む必要があります。すなわちDatabase Name
。
次のMySQLコマンドを使用して決定できます
SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 AS "Size (MB)" FROM information_schema.TABLES GROUP BY table_schema
結果
Database Size (MB)
db1 11.75678253
db2 9.53125000
test 50.78547382
GBで結果を取得
SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 / 1024 AS "Size (GB)" FROM information_schema.TABLES GROUP BY table_schema
または、データディレクトリに直接ジャンプして、v3.myd、v3の合計サイズを確認することもできます。myiとv3。frmファイル(myisamの場合)またはv3.idb&v3.frm(innodbの場合)。
MBで結果を取得するには:
SELECT
SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024), 2)) AS "SIZE IN MB"
FROM INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA = "SCHEMA-NAME";
GBで結果を取得するには:
SELECT
SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 / 1024), 2)) AS "SIZE IN GB"
FROM INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA = "SCHEMA-NAME";
を使用してMySQLに最初にログインします。
mysql -u username -p
単一のデータベースのサイズとそのテーブルをMBで表示するコマンド。
SELECT table_name AS "Table",
ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size (MB)"
FROM information_schema.TABLES
WHERE table_schema = "database_name"
ORDER BY (data_length + index_length) DESC;
database_nameをデータベースに変更します。
MB単位のサイズですべてのデータベースを表示するコマンド。
SELECT table_schema AS "Database",
ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size (MB)"
FROM information_schema.TABLES
GROUP BY table_schema;