mysql-connector-java 6.0.X serverTimezone 时区设置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql-connector-java 6.0.X serverTimezone 时区设置相关的知识,希望对你有一定的参考价值。
mysql-connector-java 5.1.21 升级至6.0.3 ;java 读取时间与MySQL 数据库存储时间相差8个小时。如数据库存储的是2017-05-29 12:01:01 ;java代码获得2017-05-29 20:01:01;相差8个小时。该怎么设置。
jdbc:mysql://127.0.0.1:3306/spring?useUnicode=true&characterEncoding=UTF-8&relaxAutoCommit=true&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2B8&useSSL=false
以上serverTimezone设置成GMT%2B8可以解决问题。
之前一直serverTimezone=GMT不行。
mysql-connector-java升级到6.0以后启动tomcat报错
mysql-connector-java升级到6.0以后启动tomcat报错
java.sql.SQLException: The server time zone value ‘?й???????‘ is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
解决办法
在连接的url后加一个参数 serverTimezone=GMT (加了这个参数之后就能顺利链接数据库了),这里的时区可以根据自己数据库的设定来设置。
之后还可能会出现另一个错误,mysql新的安全性设置要求SSL连接,此处可以加一个参数userSSL=false,或者自己设置SSL也可以
另外,6.0.2版本的driverClassName不再是原来的路径,改成com.mysql.cj.jdbc.Driver了
示例:
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.1.2:3306/test?serverTimezone=GMT&userSSL=false
以上是关于mysql-connector-java 6.0.X serverTimezone 时区设置的主要内容,如果未能解决你的问题,请参考以下文章
MySQL Connector/J 6.x jdbc.properties 配置, mysql-connector-java-6.0.4.jar 异常
使用mysql-connector-java.jar连接MySql时出现:Error while retrieving metadata for procedure columns: java.sql
java 通过eclipse编辑器用mysql尝试 连接数据库