處理mysql的二進制日誌文件mysql-bin

mysql運行時間長了會有很多的mysql-bin.xxxx的文件,每個還挺大。

這個是mysql的二進制文件。裏面記錄了所有的mysql數據庫操作,例如你的所有sql語句。

這個文件在數據庫崩潰或者數據丟失的時候查錯和恢復數據還是很有用的。

主從同步也可以根據這個日誌來保證主從的數據一致。

但是任由它增長也不行,總有一天它會把磁盤佔滿的,所以要及時的處理。

處理方式如下:

單機情況下:

直接把二進制日誌關了,在my.ini或者my.cnf裏找到log-bin,把它註釋掉就ok

如果你還是想保留一段時間的二進制日誌,那就配置定期清理,

還是在my文件裏配置expire_logs_days

比如:

     expire_logs_days=10


有主從服務器的情況下:

這個就要手動刪除了,而且還要檢查從服務器正在操作哪個日誌,要不把未同步的數據的日誌刪除了那你就去哭吧。

方法如下:

1、在從服務器上運行SHOW SLAVE STATUS 查看從服務器正在讀取哪個日誌。;

2、在主服務器上運行SHOW MASTER LOGS查看現在的日誌列表;

3、刪除從服務器正在讀取的日誌之前的所有日誌

     PURGE MASTER LOGS TO '正在操作的日誌名';
     PURGE MASTER LOGS BEFORE '時間';

     如:

     PURGE MASTER LOGS TO 'mysql-bin.099';
     PURGE MASTER LOGS BEFORE '2012-12-01 21:00:00';


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章