Mysql列表表和大小 - 按大小排序

Mar*_*ace 28 mysql

在mysql中按大小按数据库顺序列出所有表的查询是什么?

MG_*_*sta 73

试试这个...

SELECT TABLE_NAME, table_rows, data_length, index_length, 
round(((data_length + index_length) / 1024 / 1024),2) "Size in MB"
FROM information_schema.TABLES WHERE table_schema = "schema_name"
ORDER BY (data_length + index_length) DESC;
Run Code Online (Sandbox Code Playgroud)

问候.

  • fyi for some:"schema_name"需要替换为数据库的名称,除非它与MariaDB有关. (7认同)

min*_*s23 8

在 mysql 客户端中运行以下查询

SELECT table_name AS "Tables", 
round(((data_length + index_length) / 1024 / 1024), 2) "Size in MB" 
FROM information_schema.TABLES 
WHERE table_schema = "$DB_NAME"
ORDER BY (data_length + index_length) DESC;
Run Code Online (Sandbox Code Playgroud)