Mysql——查看数据库,表占用磁盘大小

1、查询所有数据库占用磁盘空间大小
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_size desc;

2、查询单个库中所有表磁盘占用大小
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 = 'xinyar_erp'
group by TABLE_NAME
order by data_length desc;

3、使用optimize命令
optimize table tb_report_inventory;
使用的时间比较长,需要耐心等待。

注意:optimize执行时会将表锁住,所以不要在高峰期使用。也不要经常使用,每月一次就足够了

 

posted on 2019-09-02 15:26  Ruthless  阅读(10271)  评论(0编辑  收藏  举报