解决MySQL插入时间差八小时问题

一般 jdbc url中 需要添加几个参数 , 大多数博客给的教程都是 useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC 这几个参数,

配置结果为: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC

对于解决时区问题,以前我也是这么用的 serverTimezone=UTC ,直到了今天踩到小坑了,才知道这不是万能的.

首先正常插入一条记录

发现数据库的记录时间和本地的时间不太一样

第一种: 查看 mysql 中的时间

先在cmd中使用 mysql -u 用户名 -p 密码来登录mysql

输入select now();

查看MySQL时间


如果时间和你本地当前时间一致

说明mysql的时间没有问题, 问题就出现在java时间上

将jdbc url参数修改成 serverTimezone=Asia/Shanghai 试试.

第二种: 如果查询 mysql 时间和本地不一致,使用以下语句设置mysql时区

 show variables like '%time_zone%'; //查询当前时区 set global time_zone='+8:00';  //在标准时区上加+8小时,即东8区时间 flush privileges; # 立即生效


成功

总结

更多相关文章

  1. android中HttpURLConnection调用getResponseCode()时崩溃 解决方
  2. Android空引用问题的解决方法——on a null object reference
  3. android读取assets大于1M文件的解决方法
  4. 几个Android小错误解决方法
  5. CheckBox android:paddingLeft 不兼容问题解决方法
  6. Android(安卓)Studio使用过程中遇到的问题(一)-- "value 2"异常解
  7. Eclipse中编译Android工程时出现的问题解决方法。
  8. Android(安卓)ListView滑动后背景变黑问题解决方法
  9. Android(安卓)ListView滑动后背景变黑问题解决方法

随机推荐

  1. Android帧动画在应用启动时同步启动
  2. android的adb常用命令使用
  3. Android应用程序管理
  4. Android里面各种控件的状态选择器
  5. Android XML 绘图
  6. Android 中两种方法设置android:gravity
  7. 新浪微博客户端源码 android
  8. android的profiler工具
  9. android RelativeLayout 属性学习
  10. Android帧率测试