immvp 2015-4-27 14:16
MySQL 的 Replication log 爆量要怎麼清除?
最近遇到一個狀況.就是在同步中的 replication log -> mysql-bin.00000x 更新的太快...<br>大概每 5Min 就會產生 1.1G 的檔案...這樣一來...即使在 /etc/my.cnf 裡面設定了<br>expire_logs_days = 1<br><br>只保留24Hours 以內的檔案還是太佔硬碟空間...這時後你可以參考這個 shell script<br><br>條件設定: 刪除一個小時以前的檔案...mysql-bin.index 做例外處理~<br><br>[quote]<br>#!/bin/bash<br><br>for entry in /var/lib/mysql/mysql-bin*.*<br>do<br> dtFile=$(date -r $entry +'%Y%m%d%H%M%S')<br> dtBefore=$(date -d "-1 hours" +'%Y%m%d%H%M%S')<br> #echo "$dtFile"<br> #echo "$dtBefore"<br> if [ "$dtBefore" -gt "$dtFile" ] && [ "$entry" != "mysql-bin.index" ];<br> then<br> #echo "$entry"<br> rm -f $entry<br> fi<br>done<br>[/quote]<br><br>這樣就可以囉~<br>