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

Flink CDC中mysql-cdc 取时间类型的时候多了8小时,怎么解决?

Flink CDC中mysql-cdc 取时间类型的时候多了8小时,设置serverTimeZone 怎么感觉无效呢?

展开
收起
十一0204 2023-08-09 08:01:16 221 0
1 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    可以尝试以下方法解决:

    确保在 Flink CDC 的 MySQL CDC 连接器配置中设置了正确的 serverTimeZone。例如,可以将其设置为 Asia/Shanghai 表示中国上海时区。

    确保 Flink 的运行环境也设置了正确的时区。可以通过设置 TZ 环境变量来指定时区。例如,可以将其设置为 Asia/Shanghai。

    检查 MySQL 数据库服务器的时区设置。确保 MySQL 数据库服务器的时区设置与预期的时区一致。可以使用以下命令来查看和设置 MySQL 的时区:

    sql
    Copy
    -- 查看当前时区设置
    SELECT @@global.time_zone, @@session.time_zone;

    -- 设置时区为 Asia/Shanghai
    SET GLOBAL time_zone = 'Asia/Shanghai';
    SET time_zone = 'Asia/Shanghai';

    
    如果以上步骤都没有生效,还可以尝试在 Flink CDC 的连接字符串中明确指定时区。例如,可以在连接字符串中添加 serverTimezone 参数,将其设置为 Asia/Shanghai。
    
    properties
    Copy
    connection-url=jdbc:mysql://localhost:3306/mydb?serverTimezone=Asia/Shanghai
    
    2023-08-13 17:48:19
    赞同 展开评论 打赏

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

相关产品

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

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

    相关镜像