2016-07-18 14:50:36.090 [destination = example , address = / , 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:95) at com.alibaba.otter.canal.parse.inbound.mysql.MysqlConnection.dump(MysqlConnection.java:113) at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:209) at java.lang.Thread.run(Thread.java:745)
mysql binlog 被移走了 /var/lib/mysql
所以报这个错
解决办法
查看主库状态,主要查看日志文件和位置:
show master status;
解决方法: 编辑canal/conf/example/meta.dat 重新指定链接信息,然后重起canal服务。
3 meta.data 内容是个json串,大概如下:
{"clientDatas":[{"clientIdentity":{"clientId":1001,"destination":"example","filter":""},"cursor":{"identity":{"slaveId":-1,"sourceAddress":{"address":"10.10.161.84","port":3306}},"postion":{"included":false,"journalName":"mysql-bin.000033","position":5988,"timestamp":1429621093000}}}],"destination":"example"}
我只修改了其中几项:
clientId 可以参考:canal/logs/example/meta.log
address:主库ip
port:主库端口
journalName : binlog名称。
position:开始同步的位置
timestamp : 延迟的时间(写0会从journalName开头开始同步)。
destination : 实例名(默认应该和当前目录名一致)
注: 实际运行发现,如果指定参数有差异,canal会从journalName的起始位置开始同步。
http://www.111cn.net/database/mysql/79902.htm
相关推荐
canal导入maven依赖失败需要本地安装的jar包,...mvn install:install-file -DgroupId=com.xpand -DartifactId=starter-canal -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar -Dfile=E:\starter-canal-0.0.1-SNAPSHOT.jar
canal的工作原理就是把自己伪装成MySQL slave,模拟MySQL slave的交互协议向MySQL Mater发送 dump协议,MySQL mater收到canal发送过来的dump请求,开始推送binary log给canal,然后canal解析binary log,再发送到...
MySQL master 将数据变更写入二进制日志( binary log, 其中记录叫做二进制日志事件binary log events,可以通过 show binlog events 进行查看) MySQL slave 将 master 的 binary log events 拷贝到它的中继日志...
Canal 是一种基于 Java 开发的数据订阅和消费工具,通过解析 MySQL 的二进制日志(Binary Log),提供实时的数据订阅和消费功能。 Canal 的主要特点是支持 MySQL 的主备复制,实时备份、多级索引、搜索引擎构建、...
2. MySQL master 收到 dump 请求,开始推送 binary log 给 slave(也就是 Canal)。 3. Canal 解析 binary log 对象(原始为 byte 流)。 4. 将解析后的数据存储在 Canal 的数据存储模块中。 Canal 的架构主要包括...
canal.instance.master.journal.name = canal.instance.master.position = canal.instance.master.timestamp = #username/password,需要改成自己的数据库信息 canal.instance.dbUsername = canal canal.instance....
Canal的核心功能是基于MySQL的Binary Log(二进制日志)实现增量数据的捕获,它通过解析这些日志,将数据库的INSERT、UPDATE、DELETE操作转换为结构化的事件,然后推送到目标系统,如Elasticsearch(ES)等。...
mysql需开启binlog 查看是否开启binlog ... 新增队列:test.queue, 绑定canal.queue, RoutingKey:canal.routing.key canal下载及配置 https://github.com/alibaba/canal/releases/tag/canal-1.1.5 配置文件见附件
2. **Binary Log解析**:Canal接收到Binary Log后,对其进行解析,转换成易于理解和使用的格式。 3. **数据传输**:解析后的数据可以被发送到不同的目标系统中,如另一个数据库、消息队列或其他应用等。 #### 三、...
MySQL的Binary Log(Binlog)记录了所有改变数据库状态的事务,Canal通过解析这些日志,提取出数据的增删改操作。它支持Row模式、Statement模式和Mixed模式的Binlog解析,以满足不同的需求。 3. **数据同步机制** ...
基于日志增量订阅和消费的业务包括 数据库镜像 数据库实时备份 索引构建和实时维护(拆分异构索引、倒排索引等) 业务 cache 刷新 带业务逻辑的增量数据处理 ...canal 解析 binary log 对象(原始为 byte 流)
MySQL master响应并推送binlog(binary log,二进制日志)给Canal。Canal解析binlog,将原始的字节流转化为可理解的对象。 **三、核心概念** 1. **Server**:Canal 的运行实例,每个实例对应一个JVM。 2. **...
Canal模拟MySQL数据库复制的过程,利用master数据库的二进制日志(binarylog)记录数据变更,并由slave数据库复制这些日志事件到中继日志(relaylog),然后slave重放relaylog中的事件以完成数据的变更。...
MySQL的Binary Log(binlog)是一种记录所有对数据库进行更改操作的二进制日志,用于数据恢复、复制和监控数据库变化。Canal通过解析binlog,捕获数据库的变更事件。 2. **Canal工作原理** Canal工作时,首先连接...
SpringBoot整合Canal是将阿里巴巴开源的数据库实时变更数据订阅与推送组件Canal与SpringBoot框架结合,以实现高效的数据同步。Canal主要用于数据库的实时增量数据同步,它能够监听MySQL数据库的binlog事件,当数据库...
【标题】"canal.1.1.5包"指的是Canal项目的1.1.5版本的组件集合。Canal是阿里巴巴开源的一款基于MySQL数据库的数据变更发布与订阅系统,它能够实时捕获并同步数据库中的数据变化,常用于构建数据一致性、实时数据...
《深入理解Canal客户端:canal.deployer-1.1.7-SNAPSHOT.tar.gz剖析》 Canal,由阿里开源的一款高效、稳定的数据库增量日志订阅与消费组件,广泛应用于数据同步、实时数据接入等场景。在本篇文章中,我们将深入探讨...
canal.deployer-1.1.4.tar.gz canal.admin-1.1.4.tar.gz canal.adapter-1.1.4.tar.gz canal.example-1.1.4.tar.gz canal-canal-1.1.4.zip canal 全量工具包集合 https://juejin.cn/post/6864585112994971662