canal mysql从库_基于Otter的mysql数据同步

Otter同步原理

07b685fbc3cbb11a8a33b2ed206ec3ef.png

架构图

上图里面关键几个元素介绍:

db : 数据源以及需要同步到的库

Canal : 用户获取数据库增量日志(源库增量日志)

manager : 配置同步规则设置数据源同步源等

zookeeper : 协调node进行协调工作

node : 负责任务处理,处理接受到的部分同步工作

测试环境

主库:

ip:192.168.3.127

port:3306

库名:qh_wt

从库:

ip:192.168.3.126

port:3306

库名:qh_wt、qh_wt1

同步方式:全库同步、多表同步(源库同步到多库)。

目的:将源库qh_wt下的所有表数据同时同步到从库qh_wt、qh_wt1中。

同步配置

数据源配置

数据源名:主库

数据类型:MYSQL

编码:UTF8

URL:jdbc:mysql://192.168.3.127:3306

数据源名:从库

数据类型:MYSQL

编码:UTF8

URL:jdbc:mysql://192.168.3.126:3306

d119c7d0e78fb1b78ddb901e253b09d0.png

数据表配置

主:

schema name:qh_wt

table name:(.*)

数据源名称:主库

数据源类型:MYSQL

从:

schema name:qh_wt

table name:(.*)

数据源名称:从库

数据源类型:MYSQL

从:

schema name:qh_wt1

table name:(.*)

数据源名称:从库

数据源类型:MYSQL

f042cb0b0b7c636187fc59b647ff7083.png

Canal配置

canal名称:canaltest

运行模式:EMBEDDED

Zookeeper集群:zookeeper集群 [ 192.168.3.18:2181,192.168.3.19:2181,192.168.3.60:2181 ]

数据源类型:MYSQL

数据库地址:localhost:3306;

数据库帐号:root

connectionCharset:UTF-8

7e2d29edb6ff03ae00e17fc3be18e650.png

Channel

Channel名字:channeltest

同步方向:单向

运行状态:运行

同步一致性:基于当前日志变更

同步模式:行记录同步

是否开启数据一致性:开启

一致性算法:单向回环补救

一致性反查数据库延迟阀值:60秒

46c1cb286bfcd4e55e43cdffa39606f1.png

Pipeline配置

Pipeline名字:pipelinetest

Select机器:node1;

Load机器:node1;

并行度:5

数据反查线程数:10

数据载入线程数:15

文件载入线程数:15

主站点:false

同步数据来源:Canal

Canal名字:canaltest

主道消费批次大小:6000

获取批次数据超时时间:-1

46f40ce57a275da5efe02704aca97a4d.png

映射关系

同步1

源端数据表:Schema Name:qh_wtTable Name:(.*)Source Name:主库

目标数据表:Schema Name:qh_wtTable Name:(.*)Source Name:从库

同步2

源端数据表:Schema Name:qh_wtTable Name:(.*)Source Name:主库

目标数据表:Schema Name:qh_wt1Table Name:(.*)Source Name:从库

c0db239b4202b514b2ebfbc8ba0152d7.png

测试结果

支持多表同步,同一个源库可以同步到多个目标库,目标库必须必须存在,这种情况只需要在同一个Pipeline下配置多个映射关系即可。

可以基于库同步,也可以基础表同步,不支持基础实例的全库同步,如果一个实例下存在多个库需要同步,则需要添加要同步的数据表配置。

欢迎关注:悬钟Mr

https://www.toutiao.com/c/user/5844231468/#mid=1634198915259405

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值