パンプキンスパイスラテ

IT系のことが多めの日記帳です

MySQLのexpire_logs_daysの勘違い

The number of days for automatic binary log file removal. The default is 0, which means “no automatic removal.” Possible removals happen at startup and when the binary log is flushed.

MySQL :: MySQL 5.7 Reference Manual :: 6.1.5 Server System Variables

「expire_logs_days」は「○日前までのログを保存する」という設定だったのに、「1日1ファイル」と思い込んでしまい、設定した日付分が保存されていない!と勘違いしてしまった。
そもそもbinary logは容量でローテーションされているのだった・・。

max_binlog_size

バイナリ ログ ファイルへの書き込みがログ ファイル サイズと干渉し、この値を超える場合、バイナリ ログをローテートする。(現行 ファイルを閉じて、次のファイルを開ける。) 設定可能値は、4096 バイト以上 1 GB (デフォルト) 以下。

MySQL :: MySQL 5.6 リファレンスマニュアル :: 5.1.4 サーバーシステム変数

参考:MySQLでバイナリログを定期的に削除するmy.cnfの設定(expire_logs_days) - ドラあり!*ドラゴンに挑むアリの物語 ** Python使いの日々