xingwenge / canal-php

Alibaba mysql database binlog incremental subscription & consumer components Canal's php client[阿里巴巴mysql数据库binlog的增量订阅&消费组件 Canal 的 php 客户端 ] https://github.com/alibaba/canal
384 stars 67 forks source link

能够拿到sql,但是RowData为空 #17

Closed loving-irene closed 3 years ago

loving-irene commented 3 years ago

canal-server:1.1.4

按照 sample 样例进行测试,能够正常输出sql

但是打印的 RowData 为空,类型为 \Google\Protobuf\Internal\RepeatedField 并不是期望的 \Com\Alibaba\Otter\Canal\Protocol\RowData[]

查看了 example 和 canal 日志,并没有报错

不知道是什么原因

loving-irene commented 3 years ago

已经解决

问题是 Mysql 的 binlog-format 未设置成功。

虽然按照教程变更了 /etc/my.cnf 的配置,也有重启,最后检查发现并没有变更成功,设置之后就能够拿到了。

需要注意的是,mysql 的 variable 分为 global 和 session 两个级别。