CST时区,MYSQL与JAVA-WEB服务器时间相差13个小时的问题

1. 查看服务器时间结果也正常 CST

2. 查看数据库

show variables like "%time_zone%";
//system_time_zone	CST
//time_zone	SYSTEM


select now();
//2020-06-06 13:49:35

 

3.  运行我的WEB应用后,时间竟相差了13个小时,一切的罪魁祸首就是CST是个比较混乱的时区。

CST时区(CST有4种含义)

  • 美国中部时间 Central Standard Time (USA) UTC-06:00
  • 澳大利亚中部时间 Central Standard Time (Australia)
  • UTC+09:30 中国标准时 China Standard Time
  • UTC+08:00 古巴标准时 Cuba Standard Time UTC-04:00
  • 另外:美国从“3月11日”至“11月7日”实行夏令时,美国中部时间改为 UTC-05:00,与 UTC+08:00 相差 13 小时
     

解决方案:

1. 修改 my.cnf 文件,在 [mysqld] 节下增加 default-time-zone = '+08:00'(需要重启 MySQL 服务器,建议在维护时间进行。)

2. 数据库连接指定:serverTimezone (建议)

jdbc:mysql://xxx:3306/demo?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8

 

你可能感兴趣的:(CST时区,MYSQL与JAVA-WEB服务器时间相差13个小时的问题)