本人在进行MySQL数据库连接时,出现下面错误:
错误语句信息:
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.
错误信息翻译 —— java.sql.SQLException: 服务器时区值'?? u±e×??±??未被识别或代表多个时区。如果希望利用时区支持,必须配置服务器或JDBC驱动程序(通过serverTimezone配置属性),以使用更特殊的时区值。
解决方法:JDBC连接的URL后面加上serverTimezone = GMT,如果需要使用GMT + 8时区,需要写成GMT%2B8。
更改前代码:
private static String dbUrl = "jdbc:mysql://localhost:3306/db_shop?characterEncoding=utf8&useSSL=false";
更改后代码:
private static String dbUrl = "jdbc:mysql://localhost:3306/db_shop?characterEncoding=utf8&useSSL=false&serverTimezone = GMT";
此时,错误得到解决。