canal-deployer1.1.8 + mysql + rabbitmq消息队列

参考文章

复制代码
  https://blog.csdn.net/2509_94002178/article/details/154644695(rabbitmq安装配置)
  https://blog.csdn.net/qq_62565054/article/details/155744984(canal)
  https://blog.csdn.net/qq_51356179/article/details/126263419(canal)

说明

1、Erlang与rabbitmq的版本兼容说明:https://www.rabbitmq.com/docs/which-erlang,由于erlang28与rabbitmq的4.2.x未能完全兼容,故选用项目版本:erlang27、rabbitmq4.2.2

2、canal目录路径:C:/canal.deployer-1.1.8

安装erlang27

1、下载erlang

路径:https://www.erlang.org/patches/otp-27.3.4.6

这里我选用的是64位的压缩包版本

2、下载后,解压缩包,目录如下(目录路径:C:/otp_win64_27.3.4.6)
3、将erlang的"bin"目录设置为环境变量
4、验证安装是否成功

命令行内输入:erl ;如下图,则为成功

部署rabbitmq4.2.2

下载、解压

路径:https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.2.2

启动服务

进入"sbin "目录,打开命令行,在该目录下执行:"rabbitmq-server.bat "即可

安装rabbitmq插件

Rabbitmq供了一个Web管理界面,可以方便地管理消息队列。执行命令:"rabbitmq-plugins enable rabbitmq_management "

重新启动rabbitmq服务

管理Rabbitmq

访问"http://127.0.0.1:15672/",用户名密码默认为"guest"

添加"exchange"
添加queue


队列列表

点击刚创建好的队列"canal.queue",进入页面后,绑定相应的交换机exchange和路由

配置canal

文件"C:/canal.deployer-1.1.8/conf/canal.properties",修改参数如下:

复制代码
  canal.serverMode = rabbitMQ

  rabbitmq.host = 127.0.0.1 #主机地址 注:不要加端口号
  rabbitmq.virtual.host = / 
  rabbitmq.exchange = canal.exchange #rabbitmq交换机
  rabbitmq.username = guest #rabbitmq用户名
  rabbitmq.password = guest #rabbitmq密码
  rabbitmq.queue = canal.queue #rabbitmq队列名
  rabbitmq.routingKey = canal.routing.key #rabbitmq路由
  rabbitmq.deliveryMode = direct #消息投递方式

文件"C:/canal.deployer-1.1.8/conf/example/instance.properties"修改参数如下:

复制代码
canal.mq.topic=canal.routing.key #rabbitmq路由

注:rabbitmq的设置值需要与上述"管理消息队列"中的设置对应

启动canal

这里如果直接启动canal服务,会报错(查看日志文件:C:/canal.deployer-1.1.8/logs/canal/canal.log ):

这里是没有对应的消息队列驱动,需要添加驱动
将"canal.deployer-1.1.8/plugin"中的所有文件复制到"canal.deployer-1.1.8/lib"中即可

双击"canal.deployer-1.1.8/bin/startup.bat"启动服务,查看日志(C:/canal.deployer-1.1.8/logs/canal/canal.log )如下,则启动成功

监听数据库

请查看:https://blog.csdn.net/sinat_36395423/article/details/156009232

查看效果

可以通过下方的"GET Message(s)"查看消息内容

相关推荐
武子康2 小时前
Java-204 RabbitMQ Connection/Channel 工作流程:AMQP 发布消费、抓包帧结构与常见坑
java·分布式·消息队列·rabbitmq·ruby·java-activemq
Evan芙2 小时前
mysql二进制部署以及多实例部署
android·数据库·mysql
总有刁民想爱朕ha2 小时前
Windows Server 2019部署MySQL 8教程
数据库·windows·mysql
程序员水自流2 小时前
MySQL数据库自带系统数据库功能介绍
java·数据库·mysql·oracle
武子康2 小时前
Java-205 RabbitMQ 工作模式实战:Work Queue 负载均衡 + fanout 发布订阅(手动ACK/QoS/临时队列)
java·性能优化·消息队列·系统架构·rabbitmq·java-rabbitmq·mq
德育处主任Pro2 小时前
在亚马逊云上解决RDS、MariaDB 与 Aurora MySQL复制延迟实战指南
数据库·mysql·mariadb
Cat God 0073 小时前
基于 CentOS 7.6 的 MySQL 8.0 主从复制
linux·服务器·mysql·centos
笨蛋少年派3 小时前
Maxwell数据变更捕获工具简介
数据库·mysql
邂逅星河浪漫3 小时前
【MySQL 事务】详细介绍+实例
数据库·mysql·事务