背景知识:
我有一个运行在Tomcat 7上的Java 1.6 web应用程序。数据库为MySQL 5.5。之前,我使用Mysql JDBC驱动程序5.1.23连接到DB。一切工作。我最近升级到Mysql JDBC驱动程序5.1.33。升级后,Tomcat在启动应用程序时会抛出这个错误。
WARNING: Unexpected exception resolving reference
java.sql.SQLException: The server timezone value 'UTC' is unrecognized or represents
more than one timezone. You must configure either the server or JDBC driver (via
the serverTimezone configuration property) to use a more specifc timezone value if
you want to utilize timezone support.
为什么会这样?
我在[mysqld]部分添加了mysql配置文件
default_time_zone = ' + 03:00 '
重启mysql服务器:
Sudo服务mysql重启
其中+03:00我的UTC时区。
在我的操作系统ubuntu 16.04上配置文件的路径:
/etc/mysql/mysql.conf.d/mysqld.cnf
警告:如果你所在的时区有夏季和冬季时间。如果要更改时间,必须在配置中更改utc。一年两次(通常)或用sudo设置crontab。
我的url jdbc连接
"jdbc:mysql://localhost/java"
我在[mysqld]部分添加了mysql配置文件
default_time_zone = ' + 03:00 '
重启mysql服务器:
Sudo服务mysql重启
其中+03:00我的UTC时区。
在我的操作系统ubuntu 16.04上配置文件的路径:
/etc/mysql/mysql.conf.d/mysqld.cnf
警告:如果你所在的时区有夏季和冬季时间。如果要更改时间,必须在配置中更改utc。一年两次(通常)或用sudo设置crontab。
我的url jdbc连接
"jdbc:mysql://localhost/java"