问题
数据库存取时间和原始时间不一致
原因
mysql设置的时区与本地的时区不一致
解决方法
1.修改 mysql 建立链接配置
mysql建立数据库连接时设置时区serverTimezone=[时区] 例如:url = "jdbc:mysql://127.0.0.1:3306/XXXX?serverTimezone=Asia/Shanghai";
2.修改数据库配置
show variables like "%time_zone%";
set global time_zone='+8:00'; 重启mysql
或者
打开my.ini在【mysqld】下增加一句
default-time_zone = ‘+8:00’ 保存退出,重启mysql
拓展
mysql url 常用属性
属性名 | 描述 | 默认值 |
---|---|---|
user | 用户名 | 无 |
password | 密码 | 无 |
userUnicode | 是否使用Unicode字符集 | false |
characterEncoding | 指定字符编码(utf8等) | 无 |
autoReconnect | 是否自动重连 | false |
autoReconnectForPools | 连接池自动重连 | false |
connectTimeout | 超时时间0表示永不超时 | 0 |
useSSL | 与服务器进行通讯时使用ssl | false |
requireSSL | 要求ssl连接 | false |
continueBatchOnError | 一条语句失败师傅继续执行批处理命令 | true |
servierTimezone | 服务器覆盖为java时区 | 无 |