使用kafka connect将实时将MySQL数据导入kafka

使用kafka connect将实时将MySQL数据导入kafka

1、kafka1.0版本以上(bin目录包含connect,conf目录包含connect)
在这里插入图片描述
在这里插入图片描述
2、下载kafka-connect-jdbc插件https://www.confluent.io/hub/confluentinc/kafka-connect-jdbc
解压得到以下目录结构:

在这里插入图片描述
3.将插件中lib里面的jar文件提取出来,放到kafka的libs目录
在这里插入图片描述
4、复制Java的MySQL驱动包到kafka的libs目录
5、将kafka-connect-jdbc中etc目录下的source文件复制到kafka的config目录下,并修改为connect-mysql-source.properties

根据自己实际情况修改:
name=test-source-sqlite-jdbc-autoincrement
connector.class=io.confluent.connect.jdbc.JdbcSourceConnector
tasks.max=10
connection.url=jdbc:mysql://192.168.1.185:3306/us_app?user=root&password=zhbr@2020
table.whitelist=t_zh_pwbzqx_sbfcms,t_yj_dwyj_qxjl,pdwqy_pms_yx_sbxx

#bulk为批量导入,此外还有incrementing和timestamp模式
mode=bulk
#timestamp.column.name=time
#incrementing.column.name=id

topic.prefix=mysql-

6、修改kafka目录下config/connect-standalone.properties

bootstrap.servers=cdh01:9092
#相同id的connect worker属于一个Connect集群
group.id=connect-cluster
#定义数据在Kafka中存储形式
key.converter=org.apache.kafka.connect.json.JsonConverter
value.converter=org.apache.kafka.connect.json.JsonConverter

7.启动zk和kafka
8. 启动kafka connect

bin/connect-standalone.sh config/connect-standalone.properties config/connect-mysql-source.properties

注意:connect-standalone.sh为单节点模式,此外还有connect-distributed集群模式,使用集群模式则需修改connect-distributed.properties
9. 消费kafka,查看是否导入成功

./kafka-console-consumer.sh --bootstrap-server cdh01:9092 --topic mysql-pdwqy_pms_yx_sbxx    --from-beginning 

此时可以将mysql中几个表的数据实时更新到kafka上面。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值