-->

2020/01/31

MySQL 的 replication logs 把硬碟空間吃光

今天服務一直中斷,稿不清楚狀況,只是開 console 進機器看,沒看還好,看了嚇一跳,硬碟空間全部被吃光了。

所以先嘗試把可以清空的資料清空:
sudo apt-get autoclean
sudo apt-get clean

cd ~
rm -fr .cache/*

空出了一些空間,但是也大概只有 1 % 左右,所以用 du 掃了一下目錄狀況,發現 /var 佔用超過 10 GB 的空間,這樣目標很明顯了:Docker 或是 MySQL。


先看 Docker,的確不少已經中止不再使用的 container,直接清空:
 $docker system prune
WARNING! This will remove:
        - all stopped containers
        - all networks not used by at least one container
        - all dangling images
        - all dangling build cache
Are you sure you want to continue? [y/N] Y

du 看了一下, /var 還底下還是有一些佔空間的檔案:



找了一下和 log 有關的設定:
max-binlog-size = 128M
innodb-log-file-size = 64M

似乎都沒與此事件無關。不過看到關鍵字「binlog」,查了一下用途,是 master / client 用來同不的 log,應該是我之前抄 DK 的設定檔,抄完忘記把不需要的東西拔乾淨的關係 XD



兇手找到了就不用客氣,把 MySQL replication 的設定全部註解掉。再來登入 MySQL,使用指定把 replication log 全部清乾淨:
purge master logs before now();


沒有留言:

張貼留言

除非必要,請不要在回覆時留下您的敏感資訊 (電話、email、地址等)