canal下载 linux_Canal 实现 Mysql数据库实时数据同步

本文介绍了Canal——一个高性能的MySQL数据同步系统,它通过模拟MySQL slave与MySQL Master交互来获取二进制日志并解析。文章详细讲解了Canal的运作原理,如何下载解压Canal Server和Canal Adapter,以及如何配置和启动这两个组件,实现实时数据同步。
摘要由CSDN通过智能技术生成

简介

1.1 canal介绍

​ Canal是一个基于MySQL二进制日志的高性能数据同步系统。Canal广泛用于阿里巴巴集团(包括https://www.taobao.com),以提供可靠的低延迟增量数据管道,github地址:https://github.com/alibaba/canal

Canal Server能够解析MySQL binlog并订阅数据更改,而Canal Client可以实现将更改广播到任何地方,例如数据库和Apache Kafka。

它具有以下功能:

支持所有平台。

支持由Prometheus提供支持的细粒度系统监控。

支持通过不同方式解析和订阅MySQL binlog,例如通过GTID。

支持高性能,实时数据同步。(详见Performance)

Canal Server和Canal Client都支持HA / Scalability,由Apache ZooKeeper提供支持

Docker支持。

缺点:

不支持全量更新,只支持增量更新。

1.2 运作原理

原理很简单:

Canal模拟MySQL的slave的交互协议,伪装成mysql slave,并将转发协议发送到MySQL Master服务器。

MySQL Master接收到转储请求并开始将二进制日志推送到slave(即canal)。

Canal将二进制日志对象解析为自己的数据类型(原始字节流)

如图所示:

准备工作

2.1 下载解压canal-server

​ 通过 github 下载 canal-server release 版本(本次安装文档使用v1.1.4)

root@locahost:/# wget https://github.com/alibaba/canal/releases/download/canal-1.1.4/canal.deployer-1.1.4.tar.gz

​ 解压

tar -zxvf canal.deployer-1.1.4.tar.gz

2.2 下载解压 canal-adapter

​ 通过 github 下载 canal-adapter release 版本(本次安装文档使用v1.1.4)

root@locahost:/# wget https://github.com/alibaba/ca

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值