MySQL Error number: MY-010442; Symbol: ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM; SQLSTATE: HY000 报错 故障修复 远程处理

文档解释

Error number: MY-010442; Symbol: ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM; SQLSTATE: HY000

Message: Unsupported non-ignorable event fed into the event stream.

MY-010442; ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM; HY000 错误说明

该错误是MySQL在复制过程中抛出的错误,ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM,指的是系统在binlog流中发现不可忽略的不支持的 Binlog事件。

常见案例

当MySQL复制时,如果系统检测到binlog流中的某一个不可忽略的binlog事件不被支持时,就会抛出ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM错误。例如,主服务器上的某个版本中支持了部分binlog事件,但是从服务器上的较低版本中,却不支持这些binlog事件,此时,MySQL就会抛出ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM错误。

解决方法

(1)检查主从服务器之间的版本:首先,应该检查当前主从服务器之间的版本兼容性,看是否会存在相应的binlog事件不被支持的情况,如果出现这种情况,应该将主从服务器之间的版本降低或升高,来解决这个问题;

(2)检查binlog_format和gtid_mode参数:MySQL中一般情况下,binlog_format和gtid_mode参数都会被推荐设置为ROW,如果binlog_format和gtid_mode参数设置不正确,也会导致MySQL抛出ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM错误;

(3)检查binlog_checksums参数:MySQL还可以使用binlog_checksums参数来校验binlog中事件的完整性,如果binlog_checksums参数设置为off,则可能会出现binlog事件不完整或被破坏的情况,从而导致MySQL抛出ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM错误;

(4)检查MySQL二进制文件:如果MySQL在启动的过程中,检查到有二进制文件存在错误,或者这些二进制文件在不支持binlog事件的版本中,也会无法正常复制,也就会抛出ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM错误。


数据运维技术 » MySQL Error number: MY-010442; Symbol: ER_RPL_UNSUPPORTED_UNIGNORABLE_EVENT_IN_STREAM; SQLSTATE: HY000 报错 故障修复 远程处理