Canal + RabbitMQ 实现监听 MySQL 数据库

第一步:开启Mysql Biglog日志(window路径:C:\ProgramData\MySQL\MySQL Server 8.0\mysql.ini),Mysql8.0默认Biglog日志是启动的。

1.添加配置

[mysqld]
log-bin=mysql-bin # 开启binlog
binlog-format=ROW # 选择ROW模式
server_id=1 # 配置MySQL replaction需要定义,不和Canal的slaveId重复即可

2.重启Mysql,查看Biglog日志是否开启

show variables like 'log_bin';

 

 第二部 : 设置RabbitMQ 

1.添加交换机 canal.exchange

 

 2.添加列队

 

 3.列队绑定交换机

 

 

第三步:配置Canal

1.配置RabbitMQ(文件:conf\canal.properties)

配置服务参数(29行)

# tcp, kafka, rocketMQ, rabbitMQ, pulsarMQ
canal.serverMode = rabbitMQ

配置连接参数(174行)

rabbitmq.host = localhost
rabbitmq.virtual.host = /
rabbitmq.exchange = mysql.exchange
rabbitmq.username = guest
rabbitmq.password = guest
rabbitmq.deliveryMode = fanout

2.配置mysql数据库(文件:conf\example\instance.properties)

配置数据IP以及端口(9行)

 

canal.instance.master.address=127.0.0.1:3306

 

配置数据库账号密码 (32行)

# username/password
canal.instance.dbUsername=lzyyyds    
canal.instance.dbPassword=123
canal.instance.connectionCharset = UTF-8

第四步:运行Canal

 

执行(路径:\bin\startup.bat)startup.bat文件

查看(路径:logs\canal\canal.log) 是否启动成功

查看(路径:logs\example\example.log)运行过程中的日志

 

posted @ 2022-10-04 16:27  lzy1666  阅读(806)  评论(0编辑  收藏  举报