• yml链接mysql路径serverTimezone=UTC的那些坑


    转载于 :https://blog.csdn.net/baidu_38837718/article/details/104981617

    serverTimezone=UTC的那些坑


    **

    UTC

    **
    首先,介绍一下什么是UTC,UTC,简称世界统一时间,跟北京时间相比,比北京早8个小时,也就是说,北京2020年3月20日18点的时候,UTC时间为2020年3月20日10点

    **

    **
    如果你用编译器连接数据库,定义了serverTimezone=UTC,那么在你编译器上执行的SQL语句,会先以UTC时区进行存储,发送到MySQL,然后MySQL以本地时区进行转换,就会导致,执行时间比从编译器上的执行时间早8个小时,导致,同一段SQL语句,在mysql直接执行,与编译器执行,结果不同,因为时间相差8个小时

    serverTimezone=UTC
    统计3月13日到3月19日的数据,Navicat运行右下角显示有21条记录
    在这里插入图片描述
    传到编译器却显示只有18条记录
    在这里插入图片描述
    原因如下:
    编译器上设置的时区属性会UTC,虽然传往后台的时间是2020-03-13 03:17:33.408(Timestamp), 2020-03-19 03:17:33.408(Timestamp),但是在没到达后台之前,进行了一次存储,以UTC时区进行存储,也就是2020-03-12 19:17:33.408(Timestamp), 2020-03-18 19:17:33.408(Timestamp),然后到达后台后,取出,进行查询的时间段,就早了8个小时,也就只有18条记录
    在这里插入图片描述
    解决方式
    将属性设置为
    serverTimezone=Asia/Shanghai
    在这里插入图片描述

  • 相关阅读:
    06-ajax发送请求-上传时注意事项
    02-git hooks是什么玩意?跟husky什么关系?
    SpringBoot配置热部署
    稀疏数组
    移动web开发——flex布局
    网站推荐
    ArrayList中的contains方法
    Java对象相等判断
    逻辑与(&)、短路与(&&)、逻辑或(|)、短路或(||)
    CentOS6.5下设置静态IP
  • 原文地址:https://www.cnblogs.com/Hello-TomCat/p/13898136.html
Copyright © 2020-2023  润新知