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

Flink CDC有人遇见这个问题吗?

Flink CDC有人遇见这个问题吗?导致原因:org.apache.flink.table.api.ValidationException:MySQL服务器的时区偏移量(比UTC晚18000秒)与配置的亚洲/上海时区不匹配。指定正确的服务器时区,以避免与时间相关的字段不一致。Caused by: org.apache.flink.table.api.ValidationException: The MySQL server has a timezone offset (18000 seconds behind UTC) which does not match the configured timezone Asia/Shanghai. Specify the right server-time-zone to avoid inconsistencies for time-related fields.我添加了'server-time-zone' = 'Asia/Shanghai',还是没用

展开
收起
cuicuicuic 2023-12-19 08:08:03 28 0
2 条回答
写回答
取消 提交回答
  • 'server-time-zone' = 'America/New_York' 试下,差的是5小时。 ,此回答整理自钉群“Flink CDC 社区”

    2023-12-19 16:33:51
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    这个问题是由于MySQL服务器的时区偏移量与配置的亚洲/上海时区不匹配导致的。要解决这个问题,你需要确保MySQL服务器的时区设置正确。你可以尝试以下方法:

    1. 登录到MySQL服务器,执行以下命令查看当前时区设置:
    SELECT @@global.time_zone, @@session.time_zone;
    
    1. 如果发现时区设置不正确,可以使用以下命令进行修改(以将时区设置为'+08:00'为例):
    SET GLOBAL time_zone = '+08:00';
    SET SESSION time_zone = '+08:00';
    
    1. 重启MySQL服务器使更改生效。

    2. 确保在Flink CDC的配置中指定正确的时区。例如,如果你使用的是Debezium连接器,可以在connector.properties文件中添加以下配置:

    debezium.database.hostname=your_mysql_host
    debezium.database.port=your_mysql_port
    debezium.database.user=your_mysql_user
    debezium.database.password=your_mysql_password
    debezium.database.server.time-zone=Asia/Shanghai
    
    1. 重新启动Flink CDC任务,问题应该已经解决。
    2023-12-19 15:03:01
    赞同 展开评论 打赏

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

相关产品

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

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