Mysql查询的数据和显示的数据时区不一致解决方案

纵饮孤独 提交于 2019-12-11 13:21:10

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

前言:在设置mysql时区生效后,查询的数据显示的时区是正确的,但是navicat中显示的数据有差别

一、查看MySQL当前时区、如果不是北京时间-东八区、要重新设置下或者修改Mysql的配置文件、新增一条北京时区的配置

  1. show variables like "%time_zone%";
  2. set global time_zone = '+8:00';
  3. set time_zone = '+8:00';
  4. flush privileges;

二、设置时区生效之后,查询的数据显示的时间是正确的,但是新增之后显示的时间还是有问题,原因是因为:MySQL新增的时区是生效了,但是数据库连接使用的时区还是标准时区,所以显示的时候出现了问题,解决方案就是讲url连接参数的时区修改

url:  jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!