mysql java写入时间少14小时

Posted RainDream

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql java写入时间少14小时相关的知识,希望对你有一定的参考价值。

查看时区:

mysql> show variables like %time_zone%;
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | CST    |
| time_zone        | SYSTEM |
+------------------+--------+
2 rows in set (0.02 sec)

查看当前时间也正常:

mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2016-12-27 22:29:59 |
+---------------------+
1 row in set (0.00 sec)

 

但是java写入是就少14小时。这是因为:在解析成预编译语句的时候,误将CST(China Standard Time utc+8)解析成CST(Central Standard Tim UTC-6),美国中部标准时间,所以少14个小时。

解决办法:

mysql> set GLOBAL time_zone = +8:00;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like %time_zone%;
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | CST    |
| time_zone        | +08:00 |
+------------------+--------+
2 rows in set (0.04 sec)

 

以上是关于mysql java写入时间少14小时的主要内容,如果未能解决你的问题,请参考以下文章

查询页面展示时间比数据库少8个小时

使用Java代码连接MySQL8.0数据库,在添加日期时,数据库里的日期少一天该怎样解决

mybatis查询mysql的datetime类型数据时间差了14小时

mybatis查询mysql的datetime类型数据时间差了14小时

springboot时间少8个小时的处理方法

Java获取系统时间少了八个小时