首先查询所有数据库占用磁盘空间大小的SQL语句如下:
select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024,2),' MB') as data_size,concat(truncate(sum(index_length)/1024/1024,2),'MB') as index_size from information_schema.tables group by TABLE_SCHEMA order by data_length desc;
然后是查询单个数据库里面各个表所占磁盘空间大小包括其索引的大小,SQL语句如下:
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 information_schema.tables where TABLE_SCHEMA = 'TestDB' group by TABLE_NAME order by data_length desc;
最后查看数据库中所有表占用空间大小
select table_schema,TABLE_NAME,concat(round(data_length/1024/1024,2),'MB') as data from information_schema.tables ORDER BY data_length desc;
注意将SQL语句中的TestDB换成你自己的数据库名称即可!