首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL二进制日志不会自动清除在binlog_expire_logs_seconds之前创建的二进制日志。

MySQL二进制日志不会自动清除在binlog_expire_logs_seconds之前创建的二进制日志。
EN

Database Administration用户
提问于 2022-10-12 05:52:59
回答 1查看 81关注 0票数 0

MySQL二进制日志不会在binlog_expire_logs_seconds之后自动清除。但是,如果我运行mysqladmin刷新日志,它会清除在binlog_expire_logs_seconds之前创建的二进制日志。

MySQL服务器版本为8.0

EN

回答 1

Database Administration用户

发布于 2022-10-12 16:23:24

二进制日志实际上不会在到达过期期时立即删除文件。

当二进制日志启动一个新文件时,过期就会发生。当时,MySQL服务器检查是否有任何旧文件比过期时间更早。它删除那些文件。因此,如果二进制日志的增长速度足够慢,以至于不能转到新文件中,那么旧的文件可能会比过期时间更长。下一次启动新文件时,旧文件将被删除。

当您运行刷新日志时,这将导致二进制日志关闭当前文件并启动一个新文件。这将触发对需要过期的旧文件的检查。

我猜它工作正常,但你计算错了你的有效期。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/318112

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档