测试过单机的canal( 四个实例)和pulsar(一个集群,三个节点),在实例日志目录下会有meta.log文件,会间隔输出内容
集群配置 修改canal.zkServers = ZK集群地址和canal.instance.global.spring.xml = classpath:spring/default-instance.xml,pulsar那边修改cluster:true
四个实例日志目录下没有产生meta.log日志, 某个实例的日志 : ---> find start position successfully, EntryPosition[included=false,journalName=mysql-bin.000030,position=583641,serverId=2697072912,gtid=,timestamp=1554964719000] cost : 1945ms , the next step is binlog dump 没有下文了(等待了好久好久)
[zk: localhost:2181(CONNECTED) 37] get /otter/canal/destinations/$instance/running {"active":true,"address":"canal_ip:11111","cid":1} cZxid = 0x303722e11 ctime = Thu Apr 11 08:07:12 GMT 2019 mZxid = 0x303722e11 mtime = Thu Apr 11 08:07:12 GMT 2019 pZxid = 0x303722e11 cversion = 0 dataVersion = 0 aclVersion = 0 ephemeralOwner = 0x30201d765320096 dataLength = 54 numChildren = 0
实例配置目录下没有meta.dat, 只生成h2.mv.db
没有异常日志。。。
原提问者GitHub用户
根据您提供的信息,可能存在以下几个问题:
Canal 实例没有正确启动,导致无法产生 meta.log 文件和 meta.dat 文件。您可以检查 Canal 实例的启动日志,查看是否存在异常信息。
Canal 实例已经启动,但是没有连接到 Canal 服务器。您可以检查 Canal 实例的配置文件,确保 Canal 服务器的地址、端口、用户名、密码等信息都正确。
Canal 实例已经连接到 Canal 服务器,但是无法正常获取 binlog 数据。您可以检查 MySQL 数据库的 binlog 是否开启,以及 Canal 实例的配置是否正确,例如 binlog 的起始位置、过滤规则等。
Canal 实例已经获取到了 binlog 数据,但是无法正确传输到目标数据存储中。您可以检查目标数据存储的配置是否正确,例如 Kafka、RocketMQ 等。
综上所述,您可以从这几个方面入手,逐一排查问题所在。如果还有问题,请提供更多的信息,以便我更好地帮助您解决问题。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。