MySQLのバイナリログの保存期間を7日に設定しようとexpire_logs_daysをセットしようとしたら怒られた。
expire_logs_daysは非推奨で、binlog_expire_logs_secondsと一緒に使用することはできないとの事だし、そもそも、binlog_expire_logs_secondsに値が設定されてるのかと確認してみると…。
デフォルトでは、2,592,000/60/60/24=30日になっているらしい。
7日に設定したいので、
binlog_expire_logs_seconds を 72460*60=604,800 に設定しておいた。
ちょっと調べてみると、binlog_expire_logs_seconds と expire_logs_daysの扱い、同じMySQL8系でもバージョンによって扱いが違うようで、少なくとも、8.0.4からはbinlog_expire_logs_secondsが設定されてる場合は expire_logs_daysの設定は無効、binlog_expire_logs_secondsが0等で無効の場合は、expire_logs_daysの設定が有効らしい。