1.canal配置
(1)修改canal 的instance.properties文件:
canal.instance.master.address=127.0.0.1:3306
设置Canal需要连接的MySQL主节点的地址和端口。
canal.instance.dbUsername=canal
设置Canal连接MySQL时使用的用户名。
canal.instance.dbPassword=canal
设置Canal连接MySQL时使用的密码。
canal.instance.connectionCharset = UTF-8
设置连接MySQL时的字符集,确保数据编码正确。
canal.instance.filter.regex=.*\\..*
设置数据过滤规则,这里表示同步所有数据库的所有表。.*\\..*是一个正则表达式,.需要转义。
(2)修改Canal的conf/canal.properties文件,添加以下配置:
# Kafka配置
canal.mq.servers = 127.0.0.1:9092
canal.mq.topic = canal_topic
2.mysql配置
(1)开启Binlog:
[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-format = ROW
binlog-row-image = FULL
expire_logs_days = 10
(2)创建Canal用户并授权:
CREATE USER 'canal'@'%' IDENTIFIED BY 'canal';
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';
FLUSH PRIVILEGES;
解析来就可以去mq接收消息啦