MySQL 8.0 定期清理二进制日志

0    380    1

👉 本文共约639个字,系统预计阅读时间或需3分钟。

登录MySQL查看binlog先关的参数:

查询上述参数后发现在MySQL 8.0.12版本中默认开启binlog日志并设置为binlog_format=row,binlog失效日期参数为 binlog_expire_logs_seconds,默认30天过期。

本人提供Oracle、MySQL、PG等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!

注释:
在MySQL8.0 版本中新增参数binlog_expire_logs_seconds,可以精确到秒,而此前版本中expire_logs_days的单位为天,最小值为1,在MySQL8.0 GA中此参数标记为deprecated 。
在MySQL 8.0 GA版本默认使用binlog_expire_logs_seconds,时间为2592000秒,30天。

若在MySQL启动时inlog_expire_logs_seconds和expire_logs_days 都没设置值,则使用默认值的 binlog_expire_logs_seconds值,即30天;
若在MySQL启动时binlog_expire_logs_seconds或者expire_logs_days其中一个设置为非0值则非0值的
参数作为binlog日志失效期;
若在启动时binlog_expire_logs_seconds和expire_logs_days参数都设置为非0值则使用binlog_expire_logs_seconds值,expire_logs_days值则失效并对其发出告警信息。

若要关闭自动清除binlog文件的功能则需要显示指定binlog_expire_logs_seconds=0 并且不设置expire_logs_days的值。
为了兼容早期版本若显示指定了expire_logs_days =0而没有指定binlog_expire_logs_seconds的值
此时自动清理binlog日志则是 禁用 的,并且此时binlog_expire_logs_seconds的默认值不适用。

该参数支持动态修改,并且支持持久话到配置文件:

结论:
在MySQL8.0版本对于binlog需要自定义设置的比较好,可以指定binlog文件的存储路径和binlog文件的命名,设置binlog文件的保留的时间,需要注意防止默认设置产生较多的binlog文件占用磁盘空间。推荐使用参数binlog_expire_logs_seconds,设置为7天,即
binlog_expire_logs_seconds=604800

    头像

    小麦苗

    学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

    您可能还喜欢...

    发表评论

    您的电子邮箱地址不会被公开。

    4 × 3 =

     

    嘿,我是小麦,需要帮助随时找我哦
    • 18509239930
    • 个人微信

    • 麦老师QQ聊天
    • 个人邮箱
    • 点击加入QQ群
    • 个人微店

    • 回到顶部
    返回顶部