如何获得 MySQL 数据库的真实大小?
我想知道我的 MySQL 数据库使用了多少空间,以便选择 Web 主机.我找到了命令 SHOW TABLE STATUS LIKE 'table_name'
所以当我做查询时,我得到这样的东西:
I would like to know how much space does my MySQL database use, in order to select a web host.
I found the command SHOW TABLE STATUS LIKE 'table_name'
so when I do the query, I get something like this:
Name | Rows | Avg. Row Length | Data_Length | Index Length
---------- ---- --------------- ----------- ------------
table_name 400 55 362000 66560
- 数字四舍五入.
那么我是否有 362000 或 400*362000 = 144800000 字节的数据用于该表?索引长度是什么意思?谢谢!
So do I have 362000 or 400*362000 = 144800000 bytes of data for this table? And what does Index Length mean? Thanks !
推荐答案
来自 S. Prakash,位于 MySQL 论坛:
From S. Prakash, found at the MySQL forum:
SELECT table_schema "database name",
sum( data_length + index_length ) / 1024 / 1024 "database size in MB",
sum( data_free )/ 1024 / 1024 "free space in MB"
FROM information_schema.TABLES
GROUP BY table_schema;
或者在一行中更容易复制粘贴:
Or in a single line for easier copy-pasting:
SELECT table_schema "database name", sum( data_length + index_length ) / 1024 / 1024 "database size in MB", sum( data_free )/ 1024 / 1024 "free space in MB" FROM information_schema.TABLES GROUP BY table_schema;
相关文章