zoukankan      html  css  js  c++  java
  • 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个小时。

    两种解决办法:

    1. 命令修改(重启mysql后失效)

    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)

    2. 修改配置文件my.cnf(在/etc/my.cnf或者/etc/mysql/my.cnf)

    在 [mysqld] 之下添加
    default-time-zone=timezone
    来修改时区。如东八区:
    default-time-zone = '+8:00'
    重启mysql:
    $ service mysql start
  • 相关阅读:
    codepen
    css3 animate
    dowebok 网站
    java第四次实验
    java第九周学习总结
    java第三次实验
    java第八周学习总结
    java第二次试验
    java第七周学习总结
    java第六周学习总结
  • 原文地址:https://www.cnblogs.com/drizzlewithwind/p/6228001.html
Copyright © 2011-2022 走看看