由于数据太大了。所以MYSQL需要瘦身,那前提就是需要知道每个表占用的空间大小。

首先打开指定的数据库:


use information_schema;


如果想看指定数据库中的数据表,可以用如下语句:

select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data from TABLES where table_schema='AAAA' and table_name='BBBB';


如果想看数据库中每个数据表的,可以用如下语句:

SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS,concat(round((DATA_LENGTH+INDEX_LENGTH)/1024/1024,2), 'MB') as data FROM TABLES WHERE TABLE_SCHEMA='AAAA';
 
 
##########################################