TiDB 学习第 5 天:TiDB 增量同步数据之 Syncer工具的使用

本文详细介绍了如何使用TiDB的Syncer工具进行数据增量同步,包括Syncer的架构、部署位置、同步前的预检查、配置方法及增量同步示例。在确保MySQL数据库版本、server-id、binlog格式等条件满足后,通过配置Syncer进行数据库同步,实现MySQL到TiDB的数据实时更新。
摘要由CSDN通过智能技术生成

一、数据增量同步

我们之前搞定了如何使用 mydumper/loader 将 MySQL 的数据全量导入到 TiDB,但如果后续 MySQL 的数据有更新,我们仍然希望快速导入,这时候使用全量的方式就不合适了。
TiDB 提供 syncer 工具能方便的将 MySQL 的数据增量的导入到 TiDB 里面。
步骤同样需要下载工具集,由于这里是测试环境,工具集已经下载了,所以直接用即可

二、场景描述

之前我们已经使用 mydumper/loader 导入了reports 数据库中 RMAN_USERGROUPHISTORY这张表的数据,现在我们希望这两张表的任何更新,更新的数据都是实时的同步到 TiDB 上面。

三、同步工具

TiDB 数据同步用 Syncer 进行操作,Syncer 是一个数据导入工具,能方便地将 MySQL 的数据增量导入到 TiDB。Syncer 包含在 tidb-enterprise-tools 安装包中,下载地址

1、Syncer 架构

Syncer  架构图

2、Syncer 部署位置

Syncer 可以部署在任一台可以连通对应的 MySQL 和 TiDB 集群的机器上,推荐部署在 TiDB 集群。

四、Syncer 同步前预检查了

数据在同步前需要进行预检查,如果参数或者状态不对应数据会同步不成功

1、检查数据库版本,Syncer 只支持以下版本
select @@version   
    5.5 < MySQL 版本 < 5.8
    MariaDB 版本 >= 10.1.2 #(更早版本的 binlog 部分字段类型格式与 MySQL 不一致)
2、检查源库 server-id
show global variables like 'server_id';

结果为空或者为 0,Syncer 无法同步数据。
Syncer server-id 与 MySQL server-id 不能相同,且必须在 MySQL cluster 中唯一。

在这里插入图片描述

3、检查 Binlog 相关参数

Binlog 是Mysql的二进制文件
a、它的开启用于数据增量备份
b、用于主从复制,mysql注节点维护了一个binlog日志文件,从节点从binlog中同步数据
1)检查 Mysql 的 Binlog 是否开启,使用如下命令确认开启

show global variables like 'log_bin';

在这里插入图片描述
如果结果是 log_bin = OFF,则需要开启 binlog,详情请见 Mysql 开启 Binlog

4、检查 MySQL binlog 格式是否为 ROW

binlog 格式必须为 ROW,且参数 binlog_row_image 必须设置为 FULL,可使用如下命令查看参数设置:

show global variables like 'binlog_format'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值