数据采集之解析Mysql的binlog日志发送至Kafka实时消费

本文采用Maxwell来实现实时解析mysql的binlog日志发送至kafka
1、开启mysql binlog

   环境中mysql是docker容器,所以需要进入容器修改mysql配置.
    docker exec -it ef07dab4da9d bash
    然后进入/etc/mysql/ 修改my.cnf
    增加如下内容
    server-id=1
    log-bin=master
    binlog_format=row
    重启docker容器 ,确认binlog是否开启
    show variables like '%log_bin%';
    log_bin属性值为ON,则以开启成功

2、配置并启动Maxwell
Maxwell的 github地址为 https://github.com/zendesk/maxwell。可去下载最新版。

wget https://github.com/zendesk/maxwell/releases/download/v1.10.7/maxwell-1.10.7.tar.gz 
tar -zxf maxwell-1.10.7.tar.gz 
bin/maxwell --user='root' --password='123456'--host='10.99.22.24' --producer=kafka --kafka.bootstrap.servers=bigdata001:9092
host为 mysql地址,bigdata001是我机器地址

3、启动kafka

我这里kafka是已经安装好的,直接启动就可以了,如果没有可以按照官网的步骤安装kafka,启动kafka之前先要启动 zookeeper

bin/zkServer.sh start
然后开启kafka
bin/kafka-server-start.sh config/server.properties
创建topic 
bin/kafka-topics.sh--create --zookeeper bigdata001:2181 --replication-factor 1 --partitions 1 --topic maxwell 
启动producer
bin/kafka-console-producer.sh--broker-list bigdata001:9092 --topic maxwell
启动consumer
 bin/kafka-console-consumer.sh--zookeeper bigdata001:2181 --topic maxwell --from-beginning

4、测试
改变数据库可看到如下效果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值