Canal 读取 mysql bin_log

场景:在微服务开发的过程中多个项目协同完成一个功能,工程与工程之间存在数据上的解耦 ,底层服务为上层服务提供数据

  而底层服务有需要对数据进行管理 。

解决方案:基本底层服务 通过 canal   获取 mysql 数据 的变更状态 ,发送到 Kafka ,上层业务由 消费者来消费 。

配置 canal  遇到的问题: 

show master status' has an error! pls check. you need (at least one of) the SUPER,REPLICATION CL

解决方案:

   

GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';  
FLUSH PRIVILEGES; 

 

mysql  配置文件修改:

log_bin = mysql-bin
binlog_format = ROW

   注意加上如下的配置后 还要为master 节点加入一个 service _id 否则启动Mysql 服务启动不了

server-id = 1

 

你可能感兴趣的:(Canal)