Canal+MySQL+Kafka+Zookeeper

目录

一、Canal

Ⅰ、下载安装

Ⅱ、配置主要配置文件

(1)conf/canal.properties

(2)conf/example/instance.properties

 Ⅲ、开启canal

二、MySQL

Ⅰ、 搭建与基础使用

Ⅱ、开启二进制日志

三、Kafka+Zookeeper集群

Ⅰ、搭建与基础使用

Ⅱ、创建topic

 四、测试

Ⅰ、数据库操作

Ⅱ、kafka消费


一、Canal

阿里巴巴B2B公司,因为业务的特性,卖家主要集中在国内,买家主要集中在国外,所以衍生出了杭州和美国异地机房的需求,从2010年开始,阿里系公司开始逐步的尝试基于数据库的日志解析,获取增量变更进行同步,由此衍生出了增量订阅&消费的业务。

canal是用java开发的基于数据库增量日志解析,提供增量数据订阅&消费的中间件。目前,canal主要支持了MySQL的binlog解析,解析完成后才利用canal client 用来处理获得的相关数据。(数据库同步需要阿里的otter中间件,基于canal)

mysql的主从复制主要靠二进制文件实现,而canal把自己伪装成slave,假装从master复制数据

在本架构中,canal通过binlog同步拿到变更数据,再发送到Kafka

Ⅰ、下载安装

下载:Releases · alibaba/canal (github.com)

 进行解压、安装

mkdir -p /opt/canal

tar zxvf canal.deployer-1.1.2.tar.gz -C /opt/canal/

Ⅱ、配置主要配置文件

(1)conf/canal.properties

cd /opt/canal/conf/

vim canal.properties
#################################################
#########               common argument         #############
#################################################
#----------------------------

# tcp, kafka, RocketMQ
canal.serverMode = kafka
#修改为kafka,默认为tcp

#----------------------------

##################################################
#########                    MQ                      #############
##################################################
#----------------------------

canal.mq.servers = ljp26:9092,ljp111:9092,ljp120:9092
#定义MQservers

#----------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值