ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

【flink报错】flink cdc无主键时的操作

【flink报错】flink cdc无主键时的操作

文章目录

  • 一. 报错
  • 二. 解决

一. 报错

“org.apache.flink.table.api.validationexception: ‘scan.incremental.snapshot.chunk.key-column’ must be set when the table doesn’t have primary keys”

报错提示当表没有主键时,必须设置 ‘scan.incremental.snapshot.chunk.key-column’。

这里表没有主键,不是flink table中设置的primary key,而是物理表中没有主键。

二. 解决

如上述报错提示:在创建表的时候,为没有主键的表指定一个唯一的标识列作为’scan.incremental.snapshot.chunk.key-column’。如下

为MY_TABLE表指定了id列作为’scan.incremental.snapshot.chunk.key-column’。这样就可以解决没有主键的表无法进行增量捕获的问题。

CREATETABLEIFNOTEXISTSmy_table(idBIGINT,name STRING,ageINT,PRIMARYKEY(id)NOTENFORCED)WITH('connector'='mysql-cdc','hostname'='xxx','port'='1521','username'='conn_uat','password'='xxxx','database-name'='CONN_UAT','schema-name'='strc','table-name'='MY_TABLE','scan.incremental.snapshot.chunk.key-column'='id');
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进