如何获取MySQL数据库表的大小?

我可以运行此查询来获取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;

转载注明原文:如何获取MySQL数据库表的大小? - 代码日志