解决Java连接MySQL后出现的时区错误问题

好不容易连接好数据库后,第二天打开运行,发现底下一串报红:

The server time zone value Öйú±ê׼ʱ¼ä is unrecognized or represents more than one time zone... ...

线程“main”java.sql.SQLException 中的异常:服务器时区值“Öйú±ê׼ʱ¼ä”无法识别或代表多个时区。如果您想利用时区支持,您必须配置服务器或 JDBC 驱动程序(通过 serverTimezone 配置属性)以使用更具体的时区值。

我的解决办法就是:

方法一:在String url = "jdbc:mysql://127.0.0.1:3306/xxx?serverTimezone=GMT%2B8";在原来的这条语句上加上这段红色的代码即可。

方法二:在图形化界面 Navicat Premium 中添加语句:set global time_zone=+8:00;运行后回到idea中重新编译运行就行了。

个人认为方法一比较简单,加上这条语句,不管你哪天运行都不会再次出现时区错误。出现时区错误的时候我用的是第二个方法,但是之后重新启动idea运行还是会报时区错误。

经验分享 程序员 微信小程序 职场和发展