需要配置canal.deployer-1.1.5的conf下的canal.properties末尾加如下配置

#end
canal.serverMode = rabbitMQ
 
rabbitmq.host = 127.0.0.1
rabbitmq.virtual.host = /
# rabbitmq中新建的 Exchange
rabbitmq.exchange = canal.topic
rabbitmq.username = admin
rabbitmq.password = admin

在RabbitMq中定义持久交换机canal.topic和持久队列mysql.canal并绑定他们的关系canal.mysql.key=canal.mysql.key,第二个配置的文件conf\example下的instance.properties只需要额外加一条,其他配置mysql服务地址信息是必要的。

# rabbitmq中配置的 绑定的 routingkey
canal.mq.topic=canal.mysql.key

完成配置后,插入一条数据,并在Mq接收到数据,使用SpringBoot项目集成Rabbit环境,定义一个消费监听者,将监听者加入Spring容器,有消息自动执行回调事件。

在此基础上加入canal.adapter-1.1.5,向Es中同步增量数据发现连接是被拒绝的,不知道是不是服务端已经连接了mq的原因,才拒绝向canal.adapter-1.1.5采集数据同步到ES,将MQ的配置注释掉尝试。去掉后,canal.adapter-1.1.5可以成功采集变更数据,并同步到ES中。

GitHub 加速计划 / ca / canal
28.22 K
7.57 K
下载
alibaba/canal: Canal 是由阿里巴巴开源的分布式数据库同步系统,主要用于实现MySQL数据库的日志解析和实时增量数据订阅与消费,广泛应用于数据库变更消息的捕获、数据迁移、缓存更新等场景。
最近提交(Master分支:3 个月前 )
1e5b8a20 - 2 个月前
ff82fd65 2 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐