mysql-查询表存储空间占用

2017-08-18  本文已影响0人  Eraz

使用 schema 数据库

mysql> use information_schema;
字段 说明
TABLE_SCHEMA 数据库名
TABLE_NAME 表名
ENGINE 所使用的存储引擎
TABLES_ROWS 记录数
DATA_LENGTH 数据大小
INDEX_LENGTH 索引大小

查询数据库总占用空间

mysql> select concat(round(sum(DATA_LENGTH/1024/1024), 2),'MB') as data_size from TABLES

查询指定数据库占用空间

mysql> select concat(round(sum(DATA_LENGTH/1024/1024), 2),'MB') as data_size 
from TABLES 
where table_schema='db_name';

查询指定表占用空间

# 指定表
mysql> select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data_size 
from TABLES 
where table_schema='db_name' and table_name='tb_name';

# 指定库的每个表
mysql> select table_name, concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data_size  
from TABLES 
where table_schema='db_name' 
group by table_name;

DATA_LENGTH改为INDEX_LENGTH就是查询索引占用的空间了。

上一篇下一篇

猜你喜欢

热点阅读