解決binlog日誌過大問題

記錄之前在跑項目過程中遇到的一次binlog日誌過大,導致zabbix掛掉的問題。
首先我們要知道,什麼是binlog?
binlog是二進制日誌文件,用於記錄mysql的數據更新或者潛在更新(比如DELETE語句執行刪除而實際並沒有符合條件的數據),在mysql主從複製中就是依靠的binlog。默認情況下,binlog日誌是二進制格式的,不能使用查看文本工具的命令(比如,cat,vi等)查看,而使用mysqlbinlog解析查看。

發現zabbix掛掉,通過排查日誌,df查看磁盤空間,最終定位到罪魁禍首是mysql的binlog日誌過大導致的,遇到這種問題,要分情況。
一、zabbix掛掉,mysql正常運行,這個時候我們只要進入mysql,運行一遍‘reset master;’,即可清理掉binlog日誌。
如下圖:
解決binlog日誌過大問題
然後再編輯my.cnf文件,修改下binlog日誌保存日期即可,如果zabbix沒有做主從數據庫,禁用掉log_bin這個參數,重啓數據庫,搞定。
解決binlog日誌過大問題
如果做了主從,則可以縮小binlog自動刪除的天數,參數爲expire_logs_days,如下圖:
解決binlog日誌過大問題

如果‘reset master;’命令跑了很久,都沒執行完,可以試下清理掉一部分大的文件跟/tmp下的數據,騰出一部分空間,再運行‘reset master;’

未完待續。。。

QQ在線Zabbix答疑羣177428068

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