Mysql 统计数据库,表的数据大小

Mysql 统计数据库数据大小

当我们需要知道数据库占用了多少磁盘大小,可以通过一些sql语句查询到整个数据库的容量,也可以单独查看表所占容量。

# 根据条件查询,打印出查询的表的数据大小(逐个表打印信息)

use information_schema

select TABLE_NAME, concat(truncate(DATA_LENGTH/1024/1024,2), 'MB') as data_size,concat(truncate(INDEX_LENGTH/1024/1024,2), 'MB') as index_size from TABLES where TABLE_NAME like '%20210131%' order by data_length desc; 

# 根据条件查询,打印出查询的表的数据大小(累加全部)

select TABLE_NAME, concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data_size,concat(round(sum(INDEX_LENGTH/1024/1024),2), 'MB') as index_size from TABLES where TABLE_NAME like '%20210131%' ;

#如果没有 where 就是查询全部

说明:

TABLE_SCHEMA : 数据库名

TABLE_NAME:表名

DATA_LENGTH:数据大小

INDEX_LENGTH:索引大小

ORDER BY:根据查询出来的大小进行排序

猜你喜欢

转载自blog.csdn.net/ganices/article/details/113524628