问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Flink CDC部署与配置指南

创作时间:
作者:
@小白创作中心

Flink CDC部署与配置指南

引用
CSDN
1.
https://blog.csdn.net/wengad/article/details/137049994

部署FLINK-CDC及配置

介质获取

到GitHub上下载Flink CDC及connector的JAR包,这里使用的是3.0.1版本:

https://github.com/apache/flink-cdc/releases

解压及部署 connector JAR

解压后得到 flink-cdc-3.0.1,创建一个软链接:

ln -s flink-cdc-3.0.1 flink-cdc

将connector下载到flink-cdclib目录。

配置CDC任务

配置CDC任务的配置文件,文件名为cdcjob.yaml,直接放在flink-cdc目录下,也可以放在其他位置,提交CDC任务时指定绝对或相对路径即可。

source:
   type: mysql
   name: MySQL Source
   hostname: xx.xx.xx.xx
   port: 3306
   username: cdc_user
   password: cdc_passwordxx
   tables: app_db.\*
   server-id: 5401-5404
sink:
  type: doris
  name: Doris Sink
  fenodes: 91.91.91.xx:8030
  username: root
  password: ""
  table.create.properties.light_schema_change: true
  table.create.properties.replication_num: 1
pipeline:
  name: MySQL to Doris Pipeline
  parallelism: 1

其中table.create.properties.replication_num设置为1,默认是3,因为这里的Doris BE只有一个节点。source部分的用户和密码、数据库信息需要根据实际情况进行配置。

提交CDC任务

flink-cdc目录下执行以下命令提交CDC任务,其中cdcjob.yaml是CDC的配置文件,可以使用绝对路径:

bash bin/flink-cdc.sh cdcjob.yaml

注意:提交任务后,不会有守护进程在操作系统中运行。如果任务提交成功,可以在Flink的Dashboard中查看任务状态。如果任务执行异常,可以在Flink的日志目录中查看具体日志。

测试

如果一切正常,登录Doris查看app_db下是否生成了新表,并检查数据是否已同步。接着可以在MySQL中进行数据更新、删除、插入等操作,观察数据是否能同步到Doris中。

FAQ

如果遇到以下异常:

java.lang.RuntimeException: Failed to schema change, CreateTableEvent{tableId=app_db.orders, schema=columns={  
id  
INT NOT NULL,  
price  
DECIMAL(10, 2) NOT NULL}, primaryKeys=id, options=()}, reason: SchemaChange request error with Failed to schemaChange, response: {“msg”:“Error”,“code”:1,“data”:“Failed to execute sql: java.sql.SQLException: (conn=311) errCode = 2, detailMessage = replication num should be less than the number of available backends. replication num is 3, available backend num is 1”,“count”:0}

需要在CDC任务配置中设置table.create.properties.replication_num: 1

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号