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)"查看消息内容

相关推荐
唐青枫3 天前
MySQL JSON 实战详解:从存储、查询、更新到 JSON_TABLE 与索引
sql·mysql
小满8783 天前
5.Mysql事务隔离级别与锁机制
mysql
元Y亨H4 天前
技术笔记:MySQL 字符集排序规则与大小写敏感性问题解决方案
mysql
这个DBA有点耶5 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵5 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
SamDeepThinking5 天前
一条UPDATE语句在MySQL 8.0中到底加了几把锁?
后端·mysql·程序员
李白客7 天前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
Jim6009 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL9 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql