请教下,syncer 同步报错 fail to be parsed

[error] fail to be parsed, error query : unexpected dml statement found in query event

现象:虽然上游的 binlog_format 已经修改为 row 格式,但是 syncer 报错

版本:Release Version: v1.0.0-50-gad6fc00,ad6fc00b829d9d21986117d2417aa42794ec8a96,2018-12-07 01:25:05 之前的版本

原因:

上游虽然已经修改了 row 格式,但是之前一直连在 MySQL 上的会话还是会以 statement 格式记录 binlog,syncer 解析后报错,也有可能是 syncer 复制的 position 早于修改的时间。

解决方法:

可以通过解析上游的 binlog 来确认 binlog 的格式,所以建议修改完 binlog_format 后,重启 MySQL 实例,或将所有会话杀掉重连一遍。

1赞

看一下