網站突然無法存取、資料庫連線失敗、phpMyAdmin 也打不開,登入控制面板一看磁碟使用率 100% 紅色警示。重啟後問題依舊,Nginx 因磁碟空間不足無法啟動,甚至 SSH 也連不上。幸好 VPS 面板內建的簡易 Shell 仍可使用,透過 df -h 定位發現罪魁禍首:/usr/local/mysql/var/ 目錄下堆滿 mysql-bin.0000* 二進制日誌檔案,佔滿所有空間。
LNMP 一鍵安裝包預設啟用 MySQL 二進制日誌,若資料庫寫入頻繁,日誌檔案會以幾十 MB 至數 GB 增長,最終耗盡磁碟空間,導致 MySQL 服務掛掉、網站報錯。
cd /usr/local/mysql/var/
rm -f ./mysql-bin.*
執行後磁碟空間即可釋放,Nginx 與 MySQL 可暫時恢復運作。
vim /etc/my.cnf
找到以下兩行,在行首加上 # 註解掉:
# log-bin=mysql-bin
# binlog_format=mixed
存檔離開(:wq),重啟 MySQL 服務:
service mysqld restart
最後重啟 Nginx 確認網站恢復正常:
service nginx restart
expire_logs_days = 7 自動清理 7 天前日誌,並定期監控磁碟使用率。