美文网首页
mysql 时区问题

mysql 时区问题

作者: 王某某的笔记 | 来源:发表于2020-11-19 09:37 被阅读0次

问题

插入时间到数据库中,会少13个小时(有时候是11个小时)

读取出来,则会自动加上少了的时间,读到的Date对象是正常的

环境

Linux

# uname -a
Linux had1 2.6.32-754.3.5.el6.x86_64 #1 SMP Tue Aug 14 20:46:41 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
# cat /etc/centos-release 
CentOS release 6.10 (Final)

Mysql 版本

5.7.20

show variables like "%time_zone%";
Variable name Value
system_time_zone CST
time_zone SYSTEM

原因

CTS 时区问题

mysql的驱动版本换成了:
mysql-connector-java 6.0.2

应该是6.X的版本更新了时区的判断方式,导致的

时间类型

GMT

格林威治标准时间

UTC

世界协调时间

DST

夏日节约时间

CST时间

CST却同时可以代表如下 4 个不同的时区:

Central Standard Time (USA) UT-6:00

Central Standard Time (Australia) UT+9:30

China Standard Time UT+8:00

Cuba Standard Time UT-4:00

可见,CST可以同时表示美国,澳大利亚,中国,古巴四个国家的标准时间。

解决版本

一 更换驱动版本

换成之前一直用的的 5.1.45

二 连接串指定时区

serverTimezone

jdbc.url=jdbc:mysql://192.168.1.211:3306/analysis?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai

三 mysql中指定

# vim /etc/my.cnf 

##在[mysqld]区域中加上
default-time_zone = ‘+8:00‘

##重启mysql使新时区生效
# /etc/init.d/mysqld restart 

相关文章

  • mysql时区问题

    mysql时区问题 查询mysql时区 我在使用mysql时,与实际的时间相差了8小时 通过命令查出mysql的时...

  • mysql 时间总结

    本文包含如下问题: 1 mysql如何参看时间 2 mysql如何查看当前时区 3 mysql如何修改当前时区 4...

  • The server time zone value 'Öйú

    mysql默认服务器时区问题:修改jdbc:mysql://localhost:3306/test?useUnic...

  • mysql时区问题

    前提背景1.mysql-connector-java的版本号8.0.21 1.在北京时间【Thu Dec 16 ...

  • mysql 时区问题

    问题 插入时间到数据库中,会少13个小时(有时候是11个小时) 读取出来,则会自动加上少了的时间,读到的Date对...

  • Mysql时区问题

    MySQL默认时区为UTC,我们属于东八区时间,和UTC存在八个小时时差。在做时间相关操作的时候,会出现不一致问题...

  • MySQL时区问题

    今天遇到一个很奇怪的问题,在代码里面通过MyBatis 能查询到今天的数据,但是将打印的SQL放到DataGrip...

  • mysql的时区错误问题: The server time zo

    mysql的时区错误问题: The server time zone value 'Öйú±ê׼ʱ¼ä' i...

  • MySQL数据库修改时间、时区

    MySQL数据库修改时间、时区 mysql默认使用的SYSTEM时区,即EST时区,查询相关资料可知,EST时区要...

  • 开发工具箱

    1、 IDE连接MySQL时区问题: 解决方案:URL后面添加

网友评论

      本文标题:mysql 时区问题

      本文链接:https://www.haomeiwen.com/subject/jmoavktx.html