阿里云RDS数据库最大支持2T,目前已经占用了90%,如果进行分库或者迁移比较麻烦,思路是找出占用空间过大的日志或不重要的文件进行删除操作
查询所有数据库占用磁盘空间大小的SQL语句:
show binary logs;
show variables like \'%log%\';
set global expire_logs_days = 10;
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;
查询所有数据库占用磁盘空间大小的SQL语句:
show binary logs;
show variables like \'%log%\';
set global expire_logs_days = 10;
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;
注意替换以上的TestDB为具体的数据库名
找到占用空间大的单表,进行删除操作即可