如果開啟了 MySQL binary log, 在 MySQL 資料目錄裡面會有很多這樣的檔案:
mysql-bin.000001
mysql-bin.000002
mysql-bin.000003
mysql-bin.000004
mysql-bin.000005
MySQL 在預設情況下不會刪除舊 binary log, 可以透過設定 my.cnf 進行日誌輪替, 開啟 my.cnf, 加入這一行在 [mysqld] 區塊內:
expire_logs_days = 14
expire_logs_days 是指定 binary log 保留的時間, 上面這行是設定保留 14 天。最後重新啟動 MySQL 便完成了。
但如果修改後不能重新啟動 MySQL 的話, 可以用 root 進入 mysql 執行以下指令也可以:
mysql > show binary logs;
mysql > show variables like ‘%log%’;
mysql > set global expire_logs_days = 14;
mysql > show variables like ‘%log%’;
mysql > set global expire_logs_days = 14;
這樣就可以立即生效。
剛才試了一下
mysql 8
目前無法用這種法式清binary log;