赞
踩
快速使用canal
windows C:\ProgramData\MySQL\MySQL Server 5.7\my.ini
linux /etc/my.cnf
# 开启 binlog
log-bin=mysql-bin
# 日志格式
binlog_format=row
# 指定数据库,若不指定,则所有数据库 binlog 都生效
# binlog-do-db=dbname
略。
mysql> show variables like 'log_bin';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin | ON |
+---------------+-------+
mysql> grant all privileges on *.* to '用户名'@'ip' identified by '密码';
mysql> flush privileges;
canal.deployer-1.1.5.tar.gz
tar zxvf canal.deployer-1.1.5.tar.gz
firewall-cmd --zone=public --add-port=11110/tcp --permanent
firewall-cmd --zone=public --add-port=11111/tcp --permanent
firewall-cmd --zone=public --add-port=11112/tcp --permanent
firewall-cmd --reload
# 指定模式 canal.serverMode = rabbitMQ # 指定实例,多个实例使用逗号分隔: canal.destinations = example1,example2 canal.destinations = example # rabbitmq 服务端 ip rabbitmq.host = 127.0.0.1 # rabbitmq 虚拟主机 rabbitmq.virtual.host = / # rabbitmq 交换机 rabbitmq.exchange = xxx # rabbitmq 用户名 rabbitmq.username = xxx # rabbitmq 密码 rabbitmq.password = xxx rabbitmq.deliveryMode =
配置 slaveId,自定义,不等于 mysql 的 server Id 即可 canal.instance.mysql.slaveId=10 # 数据库地址 canal.instance.master.address=ip:port # 数据库用户名和密码 canal.instance.dbUsername=xxx canal.instance.dbPassword=xxx # 指定库和表 canal.instance.filter.regex=.*\\..* // 这里的 .* 表示 canal.instance.master.address 下面的所有数据库 # mq config # rabbitmq 的 routing key canal.mq.topic=xxx
sh bin/startup.sh
当数据变更时,canal会向rabbitmq发送变更数据,消息为json格式。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。