information_schema
在mysql中有一个默认的数据库information_schema
,information_schema库下的表保存了MySQL服务器所有数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。
查看表大小
use information_schema;
SELECT data_length, index_length
FROM tables
WHERE table_schema = 'dbname'
AND table_name = 'tablename';
输出值的单位:Byte
+-------------+--------------+
| data_length | index_length |
+-------------+--------------+
| 166379520 | 235782144 |
+-------------+--------------+
- 转为MB
SELECT CONCAT(ROUND(SUM(data_length / 1024 / 1024), 2), 'MB') AS data_length_MB,
CONCAT(ROUND(SUM(index_length / 1024 / 1024), 2), 'MB') AS index_length_MB
FROM tables
WHERE table_schema = 'dbname'
AND table_name = 'tablename';