MySQL时区问题(与北京时间相差13小时)-- mybatisplus使用LocalDateTime.now()获取系统当前时间问题
Tomcat和MySQL在同一个服务器上,Java代码打印时间出来都是对的,但是写入数据库就会与北京时间相差13小时左右。
查代码,查服务器,各种没有发现问题,后来发现可能是数据库的问题造成的,
于是乎:进入数据库查看时间和时区:
mysql> select curtime();
mysql> show variables like ‘%time_zone%’;
发现时间也没问题,都是北京时间。
那么为什么通过mp写进数据库的时间会差那么长时间呢?
千辛万苦找到了这篇文章:
https://juejin.im/post/5902e087da2f60005df05c3d
因 “CST” 时区协商误解导致时间差了 14 或 13 小时
CST 的时区是一个很混乱的时区,在与 MySQL 协商会话时区时,Java 会误以为是 CST -0500,而非 CST +0800。
CST 时区
名为 CST 的时区是一个很混乱的时区,有四种含义:
美国中部时间 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
今天是“4月28日”。为什么提到日期?因为美国从“3月11日”至“11月7日”实行夏令时,美国中部时间改为 UTC-05:00,与 UTC+08:00 相差 13 小时。
更加详细的可参考上方博文。
接着解决问题:
手动修改MySQL的时区:
mysql> set global time_zone=’+08:00’;
mysql> set time_zone=’+08:00’;
mysql> flush privileges;
或者修改my.cnf配置文件,添加如下:
default-time-zone = ‘+08:00’
重启MySQL服务
问题解决!
MySQL时区问题(与北京时间相差13小时)-- mybatisplus使用LocalDateTime.now()获取系统当前时间问题相关推荐
- 机器时区导致Java时间与当前时间相差13小时的解决方案
在机器使用date命令获取的时间与当前时间一致,但在Java中去获取时间相差了13个小时,这很可能就是机器的时区不太满足当前需要,这时候可以在Java中获取一下时区: 测试机器时区 import ja ...
- PHP获取系统当前时间
时区问题,php环境默认时差与北京时间相差8小时,我们要想获取正确的时间就必须设置 在php文件开始处 加上date_default_timezone_set('prc'); <?php //i ...
- Java 程序读取Mysql数据库时间信息与真实时间相差 13、14 小时、SQLException: HOUR_OF_DAY: 2 -> 3
CST时区引起的异常: Java 程序读取Mysql数据库时间信息,与真实时间相差 13.14 小时 java.sql.SQLException: HOUR_OF_DAY: 2 -> 3 原因: ...
- centos java 时间差8个小时_解决Centos7本机时间与实际时间相差8小时
GPS系统中有两种时间区分,UTC就0时区的时间,CTS为本地时间,如北京为早上八点(东八区),UTC时间比北京时晚八小时; CTS:China Standard Time,UTC+8:00 中国沿海 ...
- php源码 时间慢8小时 etc gmt,PHP 中 Date 函数与实际时间相差8小时的解决方法
PHP 中的 date() 函数显示的时间是格林威治时间,和北京时间正好相差8个小时,其他时间相关的函数,如 strtotime() 也有相同的问题,同样可以通过下面的方法来解决: 1. 修改php. ...
- Mysql数据库保存时间timestamp,相差13小时
场景 近日,在调研工作流Activiti7,构建本地项目,开发demo的时候,发起时间不一致问题.已知,Activiti在部署流程的时候,会操作表ACT_RE_DEPLOYMENT,此表的作用是记录流 ...
- mysql时间和本地时间相差13个小时
小谢博客地址https://xgs888.top/post/view?id=76 mysql时间和本地时间相差13个小时 作者:谢高升 发布:2017-12-15 浏览:0次 mysql时间和本地时间 ...
- JDK8中好用的日期处理-LocalDate类-LocalTime-LocalDateTIme,mysql解决时区相差13小时的问题,日期格式器DateTimeFormatter
JDK8中好用的日期处理-LocalDate类-LocalTime-LocalDateTIme,mysql解决时区相差13小时的问题,日期格式器DateTimeFormatter 参考文章: (1)J ...
- Eclipse时区出问题,与北京时间相差八小时
Eclipse时区出问题,与北京时间相差八小时,有如下图两种情况: 情况1:Eclipse本身时间不对 情况2:用java方法获取系统时间出错 **************************** ...
- Java 与 Mysql 时间相差八小时
Java 与 Mysql 时间相差八小时 在项目中发现,Java获取时间插入到数据库少了8小时 解决过程 最终解决方案 在项目中发现,Java获取时间插入到数据库少了8小时 其实初衷是想做定时去跑我需 ...
最新文章
- 教你如何更优雅的设计Java异常
- codis3.2升级redis3.11到redis6.0.10调研
- 对抗高并发拯救系统架构,我们并不需要复仇者联盟|深圳活动
- Ceph BlueStore 和双写问题
- iphone分辨率_揭示真实的手机屏幕大小和分辨率
- jQuery实现checkBox全选全取消
- 计算机各个部件配合完成加减乘除(计组学习二)
- 读书笔记——计算机基础之操作系统
- Python报错unindent does not match any outer indentation level如何解决?
- ElasticSearch学习笔记十七 文档更新及版本控制
- 爱荷华州立 计算机博士,2020年爱荷华州立大学博士专业设置
- ant +design+vue中You may use special comments to disable some warnings. Use // eslint-disable-next-li
- 机会是留给有准备的人的
- 毕业设计 STM32单片机的畜牧养殖场管理与检测系统 - 物联网
- 华人最多的和比例最高的国家
- Windows API函数大全---附:windows运行命令详解
- 找2021考研资料?这些超强资源网站必须知道!
- 网络 - 收藏集 - 掘金
- 三通道图像和四通道图像
- R语言绘制gif动图