• mysql数据库时区问题


    遇到一个问题:项目jar包扫描后,升级了好多jar包,包括mysql的驱动jar包升级到了8.0版本以上。升级后从mysql中查出的时候,全都比数据库的时间多13小时,而且这些时间存到数据库的时间,有些是正确的时间,有时比正确时间少13小时,这样返回给前端的时间就不准确,解决这个问题只要在springboot的数据库连接配置中增加一段配置就能解决问题

    spring:

       datasource:

          url:jdbc:mysql://localhost:3306/mydb3?serverTimezone=GMT%2B8&useSSL=false

    这个时区要设置好,不然会出现时差,
    如果你设置serverTimezone=UTC,连接不报错,
    但是我们在用java代码插入到数据库时间的时候却出现了问题。
    比如在java代码里面插入的时间为:2018-06-24 17:29:56
    但是在数据库里面显示的时间却为:2018-06-24 09:29:56
    有了8个小时的时差
    UTC代表的是全球标准时间 ,但是我们使用的时间是北京时区也就是东八区,领先UTC八个小时。

    //北京时间==东八区时间!=北京当地时间
    serverTimezone=GMT%2B8
    //或者使用上海时间
    serverTimezone=Asia/Shanghai

    我不确定为什么我的时间相差13小时,加上这段设置也能解决问题,应该是之前我既没有设置UTC,也没有设置东八区,使用默认的,也许就差了13小时

    以上为百度得来

    ===================================

    公司实操:

    spring.datasource.druid.url=jdbc:mysql://服务器地址/数据库名?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true
  • 相关阅读:
    Sqoop
    Mediawiki
    TextMate 通用快捷键
    Wind7外接显示器选择拓展模式后,鼠标只能往右移动才能切换到外接显示器上,不能修改切换方向
    用Nginx+Lua(OpenResty)开发高性能Web应用
    netty4.0.x源码分析—bootstrap
    mysql分组合并GROUP_CONCAT
    Only POT texture can be compressed to PVRTC format
    手机屏幕左下角显示Fastboot mode是什么情况?
    判断UNITY版本号
  • 原文地址:https://www.cnblogs.com/toufajiantuzhongbuhui/p/12852308.html
Copyright © 2020-2023  润新知