你的MYSQL 有定期清理過binlog日誌嗎?

你的MYSQL 有定期清理過binlog日誌嗎?

來自專欄 科多大數據

你的MYSQL 有定期清理過binlog日誌嗎?科多大數據來分享幾個清理方法。

MySQL中,binlog日誌佔用很大的磁碟資源,如若長期放任不管,最後將造成資源浪費。我們先手動清理,然後設置成自動清理。

查看指定刪除日誌

mysql >show binary logs; 查看多少binlog日誌,佔用多少空間。

mysql> PURGE MASTER LOGS TO mysql-bin.002467; 刪除mysql-bin.002467以前所有binlog,這樣刪除可以保證*.index信息與binlog文件同步。

手動清理

mysql>PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 5 DAY); 手動刪除5天前的binlog日誌

自動設置清理

mysql> set global expire_logs_days = 5; 把binlog的過期時間設置為5天; mysql> flush logs; 刷一下log使上面的設置生效,否則不生效。

為保證在MYSQL重啟後仍然有效,在my.cnf中也加入此參數設置

expire_logs_days = 5

想要學習大數據的小夥伴們可以到科多大數據進行諮詢喲~

推薦閱讀:

忘記mysql 的密碼(重置mysql 密碼)
為什麼我不再看好MariaDB
PHP擴展 Mysql 與 Mysqli
寫給菜鳥和老鳥,mysql5.6、5.7如何飛速安裝
undo log與redo log原理分析

TAG:MySQL | MongoDB | Redis |