1. 程式人生 > >阿里雲RDS的mysql資料庫佔用空間超過90%的處理

阿里雲RDS的mysql資料庫佔用空間超過90%的處理

阿里雲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;

注意替換以上的TestDB為具體的資料庫名


找到佔用空間大的單表,進行刪除操作即可