如何统计 MySQL 数据量大小
目录
如何统计 MySQL 数据量大小 ......................................................................................................... 1
CONCAT 函数解读 .................................................................................................................... 2
换汤不换药,对所有库的查询 ....................................................................................................... 2
information_schem 库 ...................................................................................................................... 3
performance_schema 库 .................................................................................................................. 4
Harbin-李泳谊 Net<youjiu_linux@qq.com> 9:45:41
@4 组组长-何旭东 东哥。
如何计算 mysql 的数据量大小。
mysql> SELECT CONCAT(TRUNCATE(SUM(data_length)/1024/1024,2),'MB') AS data_size,
-> CONCAT(TRUNCATE(SUM(max_data_length)/1024/1024,2),'MB') AS max_data_size,
-> CONCAT(TRUNCATE(SUM(data_free)/1024/1024,2),'MB') AS data_free,
-> CONCAT(TRUNCATE(SUM(index_length)/1024/1024,2),'MB') AS index_size
-> FROM information_schema.tables WHERE TABLE_SCHEMA = 'lvanclub_live';
+-----------+---------------+-----------+------------+
| data_size | max_data_size | data_free | index_size |
+-----------+---------------+-----------+------------+
| 23.29MB | 0.00MB | 19.00MB | 5.23MB |
+-----------+---------------+-----------+------------+
1 row in set (0.05 sec)
这里面使用了 information_schema 的 tables 表
使用了 CONCAT 函数将后续的内容合并起来计算,主要计算了 data_length,max_data_length,
data_free,index_length 行。
使用 SUM 函数,将里面数值相加。
这里还用到了 TRUNCATE(),大家可以注意 最后面的 2,它没有用到任何计算,这种方式
为去掉小数点后的数字。
SELECT CONCAT(TRUNCATE(SUM(data_length)/1024/1024,2),'MB') AS data_size,
CONCAT(TRUNCATE(SUM(max_data_length)/1024/1024,2),'MB') AS max_data_size,
CONCAT(TRUNCATE(SUM(data_free)/1024/1024,2),'MB') AS data_free,
美河学习在线 www.eimhe.com