繁体   English   中英

收到错误无法执行语句:由于BINLOG_FORMAT = STATEMENT,因此无法写入二进制日志

[英]Getting error Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT

我有一个本地开发服务器,在这里我测试了几乎所有的石英功能(计划/执行/等),其中mysql设置log_bin = off当我在登台服务器上部署相同脚本(log_bin = on)时,出现以下错误。

JobStoreTX.Log      Failure occurred during job recovery: Couldn't recover jobs: Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMMITTED.

Quartz.JobPersistenceException:无法恢复作业:无法执行语句:由于BINLOG_FORMAT = STATEMENT并且至少一个表使用了仅限于基于行的日志记录的存储引擎,因此无法写入二进制日志。 当事务隔离级别为READ COMMITTED或READ UNCOMMITTED时,InnoDB仅限于行记录。 ---> MySql.Data.MySqlClient.MySqlException:无法执行语句:由于BINLOG_FORMAT = STATEMENT并且至少一个表使用了仅限于基于行的日志记录的存储引擎,因此无法写入二进制日志。 当事务隔离级别为READ COMMITTED或READ UNCOMMITTED时,InnoDB仅限于行记录。

在向下挖掘时,我发现是由于binlog_format = Statement

无论如何,我可以使用上面的设置(将binlog_format的含义改为“混合”)

根据mysql论坛的建议,我更改了binlog_format = MIXED并且它开始工作。 我进一步建议的是,在石英使用的mysql使用中应注意,如果log_bin设置为on,则binlog_format应该设置为MIXED

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM