RDS for MySQL 刪除數據後空間沒有減少處理方法
阿新 • • 發佈:2018-03-06
port AD 阿裏 狀態 索引 百萬 note ble optimize
公司的程序和數據庫部署在阿裏雲上,數據庫使用的是阿裏雲的RDS,這天,經理在開發群中發了一個信息:
您的RDS實例rm********0oq的磁盤在過去一周平均使用率已超過80.0%,建議您對實例規格進行升級,以免磁盤資源不足,影響業務運行。詳情請您查看您阿裏雲註冊郵箱中的郵件。
1、首先我在Navicat上遠程delete阿裏雲RDS數據表中的數據,
找到對應的表,然後delete 刪除部分數據,單個表中的數據達五千萬條,所以操作起來很笨重。(懊惱啊,為什麽當初沒有做分表操作。。)
按照產品經理的原話是“近期的任務不要刪除,把以前的數據刪掉!”
so,切割表的想法就打消了。還好我們的id是自增的,根據id刪除了前面的數據。(每次也就幾十萬)
在復雜一些的就是根據任務字段刪除數據。
刪了一個小時,MD累死了,才刪了幾百萬條數據,這時候我看了一下RDS的磁盤空間。
!!!!!!!!!!!!!!
MD,我奔潰啊,磁盤空間快滿了,什麽鬼啊!
嚇得我趕緊喝了口82年的拉菲。
我打開百度(全球最大的中文搜索引擎),搜了一下本文的題目“MySQL 刪除數據後空間沒有減少處理方法”,給出了方法:
https://help.aliyun.com/knowledge_detail/41720.html
我就迅速的登上了DMS,找到了表維護--》優化。然後開始慶幸,幸好及時發現,不然就滿了。。滿了。滿了!真的是滿了。。。。。。。在我優化的時候我看了一下實力狀態:
你TM在逗我?
越優化越滿了?什麽情況啊。。。。。。。。。
再次打開了全球最大的中文搜索引擎。
給出下面的解決方案,使用命令行:
OPTIMIZE TABLE mission_picture
這個命令執行時間比較長,可能是數據量較大的原因:但是結果並不理想,
執行結果失敗 note:Table does not support optimize, doing recreate + analyze instead
error:The table ‘mission_picture‘ is full status:Operation failed
最後解決方法是:
RDS for MySQL 刪除數據後空間沒有減少處理方法