MySQL - 二进制日志文件大小增长超过最大限制

Yas*_*uru 4 mysql binlog mysql-5.7

我在 Centos 6 上运行 MySQL 5.7。我启用了二进制日志记录,但没有为我的配置文件中的二进制日志的最大大小提供任何自定义值。默认情况下,参数max_binlog_size = 1073741824相当于 1GB。这意味着,一旦二进制日志达到 1GB 的大小,就应该创建一个新文件。

我在我的服务器中观察到所有二进制日志文件的大小都不同,并且有很多对比,例如 200GB、165GB、4GB 等......

为什么当二进制日志文件的最大大小为 1GB 时会发生这种情况?是否有必要在配置文件中明确提及默认的最大大小?

Rol*_*DBA 5

您的二进制日志如此庞大的原因很简单:您在每次交易中提交了太多数据!!!为什么会这样?根据关于max_binlog_size的 MySQL 文档:

事务以一个块写入二进制日志,因此它永远不会在多个二进制日志之间拆分。因此,如果您有大事务,您可能会看到大于max_binlog_size 的二进制日志文件

建议

请尝试以较小的块提交数据。