开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink CDC这个pg数据库的设置的复制逻辑是F,还报这个错,什么原因?

Flink CDC这个pg数据库的设置的复制逻辑是F,还报这个错,什么原因?The "before" field of UPDATE/DELETE message is null, please check the Postgres table has been set REPLICA IDENTITY to FULL level

展开
收起
真的很搞笑 2023-10-23 15:26:35 111 0
1 条回答
写回答
取消 提交回答
  • 这个错误信息表明,你在PostgreSQL上的复制配置可能存在一些问题。

    "before"字段在UPDATE/DELETE消息中为空,可能是因为PostgreSQL的复制配置没有设置为"FULL"级别。在"FULL"级别的复制下,PostgreSQL会捕获并发送所有的数据变化,包括INSERT、UPDATE和DELETE操作。而在较低的复制级别下,PostgreSQL可能只会捕获并发送一部分的数据变化,或者完全不发送任何数据变化。

    要解决这个问题,你需要检查你的PostgreSQL复制配置,确保它已经被设置为"FULL"级别。你可以通过以下命令来查看当前的复制配置:

    SELECT replication_role;
    

    如果结果不是"FULL",你需要修改PostgreSQL的复制配置,将其设置为"FULL"。你可以通过以下命令来修改复制配置:

    ALTER SYSTEM SET replication_role TO 'FULL';
    

    然后,你需要重启PostgreSQL服务器,使新的配置生效。

    2023-10-23 16:42:44
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载