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

相关推荐
爱琴孩7 分钟前
RabbitMQ 消息消费模式深度解析
rabbitmq·消息重复消费
alonewolf_9920 分钟前
深入理解MySQL事务与锁机制:从原理到实践
android·数据库·mysql
骑着bug的coder36 分钟前
第11讲:主从复制与读写分离架构
后端·mysql
朝依飞37 分钟前
fastapi+SQLModel + SQLAlchemy2.x+mysql
数据库·mysql·fastapi
shejizuopin2 小时前
基于JavaSSM+MySQL的实验室考勤管理系统设计与实现
java·mysql·vue·毕业设计·论文·springboot·实验室考勤管理系统设计与实现
alonewolf_992 小时前
MySQL全局优化详解与8.0新特性全面解读
数据库·mysql
Full Stack Developme2 小时前
Mycat 2 实现 MySQL 读写分离,并且实现 主从同步
android·数据库·mysql
利刃大大2 小时前
【RabbitMQ】Simple模式 && 工作队列 && 发布/订阅模式 && 路由模式 && 通配符模式 && RPC模式 && 发布确认机制
rpc·消息队列·rabbitmq·队列
alonewolf_992 小时前
MySQL Explain详解与索引优化实战
数据库·mysql·adb
それども3 小时前
MySQL 查询索引最左前缀原则,如果是(a,b)的联合索引,WHERE b = ? AND a = ?会走索引吗
数据库·mysql