一、启动Canal server,模拟mysql-slave,监听binlog
https://github.com/alibaba/canal/wiki/QuickStart
二、Canal Client
https://github.com/alibaba/canal/wiki/ClientExample
三、Canal 原理配置与配置实践
https://www.iteye.com/blog/shift-alt-ctrl-2399603
https://blog.csdn.net/fcly2013/article/details/79430484
四、Canal接到消息可以推送到MQ,提高Canal的性能。
注意:1 保证有序性。(a->c 性能提高)
a.所用接收到的binlog数据推送到同一MQ。
b.保证同一个table的binlog数据推送到同一MQ。
c.保证同一主键的binlog数据推送到同一MQ。
五、同时启动多个Canal server,分治提高性能
Canal server中可以配置server监听的table,可以启动多个server,各自监听不同的table分担压力。
#table regex
canal.instance.filter.regex = .\*\\\\..\*
六、设置监听起点
mysql链接时的起始位置(instance.properties)
- canal.instance.master.journal.name + canal.instance.master.position : 精确指定一个binlog位点,进行启动。配置与BUG说明:https://blog.csdn.net/weixin_34113237/article/details/92375414
- canal.instance.master.timestamp : 指定一个时间戳,canal会自动遍历mysql binlog,找到对应时间戳的binlog位点后,进行启动
- 不指定任何信息:默认从当前数据库的位点,进行启动。(show master status)
七、通过ZK实现HA高可用配置
配置方案:https://blog.csdn.net/flyawayjh/article/details/80990221