博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql中时间数据差14小时
阅读量:6095 次
发布时间:2019-06-20

本文共 968 字,大约阅读时间需要 3 分钟。

  hot3.png

问题

调试代码中,确定了new Date();出来的时间数据是准确了,没有出现差14小时情况,通过Spring hibernate jdbc这一路保存到mysql数据库中,就出现了14小时问题。

排查

mysql排查

# 查看mysql时区mysql> SELECT @@global.time_zone, @@session.time_zone;+--------------------+---------------------+| @@global.time_zone | @@session.time_zone |+--------------------+---------------------+| SYSTEM             | +08:00              |+--------------------+---------------------+# 东八区,没有问题的# 主动查询当前时间mysql> select now();+---------------------+| now()               |+---------------------+| 2018-12-18 17:11:05 |+---------------------+1 row in set (0.00 sec)# 没有问题,时间与当前时间是一致的。

到这里,基本上排除了是mysql数据库时区不对的问题,之前在代码中debug,也没有发现是代码中的问题。到这里,只有尝试在jdbc中主动设置东八区。之前就出现过,会不会spring的jdbc也是需要设置东八区类?

解决

jdbc时区

只需要中添加&serverTimezone=GMT%2B8设置jdbc时区为东八区就可以了,GMT+8表示东八区,当jdbc只能认识GMT%2B8写法。例如:

spring.datasource.url=jdbc:mysql://localhost:3306/mydb?useSSL=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8

参考

转载于:https://my.oschina.net/fxtxz2/blog/2990078

你可能感兴趣的文章
Win10桌面奔溃怎么办?雨林木风Win10奔溃解决方法教程
查看>>
mysql Inoodb 内核
查看>>
Redis 基础
查看>>
UITextField的returnkey点击事件
查看>>
特殊字体引用
查看>>
owlcar 用法心得 自定义导航
查看>>
数据结构 学习笔记03——栈与队列
查看>>
DB2 OLAP函数的使用(转)
查看>>
数学之美系列二十 -- 自然语言处理的教父 马库斯
查看>>
Android实现自定义位置无标题Dialog
查看>>
面试总结
查看>>
Chrome浏览器播放HTML5音频没声音的解决方案
查看>>
easyui datagrid 行编辑功能
查看>>
类,对象与实例变量
查看>>
HDU 2818 (矢量并查集)
查看>>
【转】php字符串加密解密
查看>>
22. linux 常用命令
查看>>
ASP.Net 使用GridView模板删除一行的用法
查看>>
(十六)字段表集合
查看>>
JPGraph
查看>>