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

相关推荐
bjzhang7512 小时前
CentOS下安装MySQL详解
linux·mysql·centos
十五年专注C++开发14 小时前
MySql中各种功能用sql语句实现总结
数据库·sql·mysql
ULIi096kr15 小时前
MySQL解决Too many connections报错:连接数爆满排查、优化与永久解决方案
数据库·mysql·adb
李白的天不白16 小时前
服务器上数据库的创建
mysql
ha_lydms16 小时前
AnalyticDB基本概念
mysql·adb·analyticdb
Fanta丶17 小时前
23.MySql group by优化、limit优化、 count优化、update优化
mysql
医疗信息化王工17 小时前
医院自律端系统——预警处置模块全栈实战(ASP.NET Core + Vue3 + Quartz 定时调度)
mysql·postgresql·vue·asp.net core·quartz
NineData17 小时前
SQL 都在等锁时,ChatDBA 先帮 MySQL 找到谁在挡路
数据库·人工智能·sql·mysql·安全·数据复制·数据迁移工具
神仙别闹17 小时前
基于 PHP + MySQL学生信息管理系统
android·mysql·php
Amnesia0_018 小时前
MYSQL复合查询和内外连接
数据库·mysql