canal version: v1.1.4, v1.1.5 RDS: MySQL 5.7
配置文件变更部分:
canal.properties canal.zkServers = zookeeper.XXXXXX.com:2181
instance.properties canal.instance.master.address=XXXX.mysql.rds.aliyuncs.com:3331 canal.instance.master.journal.name=mysql-bin.000018 canal.instance.master.timestamp=1589784982000 canal.instance.rds.accesskey=LTAI4FrRZfXXXXXXXX5zgxYD canal.instance.rds.secretkey=NLjSMlFDydyxPIXXXXXXXXXXzvpBq2 canal.instance.rds.instanceId=rm-bp19qXXXXXXXXklfc # RDS的实例ID canal.instance.dbUsername=canal canal.instance.dbPassword=canalXXXXXXXX
昨天进行验证,手动停止canal服务,把binlog上传到OSS上面。
按照官方文档进行操作,想从指定binlog开始拉取,但是启动报错找不到binlog。
我用关键字在issue进行查询,按照issue里面的方式指定binlog和position,或者指定binlog和timestamp,均提示以下错误。 2020-05-19 11:28:30.952 [destination = example , address = XXXX.mysql.rds.aliyuncs.com/172.16.243.204:3331 , EventParser] ERROR c.a.o.canal.parse.inbound.mysql.dbsync.DirectLogFetcher - I/O error while reading from client socket java.io.IOException: Received error packet: errno = 1236, sqlstate = HY000 errmsg = Could not find first log file name in binary log index file at com.alibaba.otter.canal.parse.inbound.mysql.dbsync.DirectLogFetcher.fetch(DirectLogFetcher.java:102) ~[canal.parse-1.1.5-SNAPSHOT.jar:na] at com.alibaba.otter.canal.parse.inbound.mysql.MysqlConnection.dump(MysqlConnection.java:235) [canal.parse-1.1.5-SNAPSHOT.jar:na] at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:265) [canal.parse-1.1.5-SNAPSHOT.jar:na] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_102] 2020-05-19 11:28:30.952 [destination = example , address = XXXX.mysql.rds.aliyuncs.com/172.16.243.204:3331 , EventParser] ERROR c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - dump address XXXX.mysql.rds.aliyuncs.com/172.16.243.204:3331 has an error, retrying. caused by java.io.IOException: Received error packet: errno = 1236, sqlstate = HY000 errmsg = Could not find first log file name in binary log index file at com.alibaba.otter.canal.parse.inbound.mysql.dbsync.DirectLogFetcher.fetch(DirectLogFetcher.java:102) ~[canal.parse-1.1.5-SNAPSHOT.jar:na] at com.alibaba.otter.canal.parse.inbound.mysql.MysqlConnection.dump(MysqlConnection.java:235) ~[canal.parse-1.1.5-SNAPSHOT.jar:na] at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:265) ~[canal.parse-1.1.5-SNAPSHOT.jar:na] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_102] 2020-05-19 11:28:30.952 [destination = example , address = XXXX.mysql.rds.aliyuncs.com/172.16.243.204:3331 , EventParser] ERROR com.alibaba.otter.canal.common.alarm.LogAlarmHandler - destination:example[java.io.IOException: Received error packet: errno = 1236, sqlstate = HY000 errmsg = Could not find first log file name in binary log index file at com.alibaba.otter.canal.parse.inbound.mysql.dbsync.DirectLogFetcher.fetch(DirectLogFetcher.java:102) at com.alibaba.otter.canal.parse.inbound.mysql.MysqlConnection.dump(MysqlConnection.java:235) at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:265) at java.lang.Thread.run(Thread.java:745) ]
请问一下,我该如何处理,才能从指定点位进行数据拉取?谢谢大家的答复。
原提问者GitHub用户PostgreSQL1989
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。