jdbc连接mysql常见报错 1

jdbc连接mysql报错Exception in thread “main” java.sql.SQLException: The server time zone value ‘Öйú±ê׼ʱ¼ä’

Exception in thread "main" 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.
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73)

该错误为是系统时间错误(SQL默认美国时间,而我们中国要比他们迟8小时)

解决方法一

只需要在访问数据库的Url后面加上以下的语句即可:

?serverTimezone=GMT%2B8

例如URL为:

jdbc:mysql://localhost:port/dbtest

改为:

jdbc:mysql://localhost:port/dbtest?serverTimezone=GMT%2B8

解决方法二

1、打开cmd窗口,用root用户登录mysql

mysql -uroot -proot 

通过以下命令查询Time Zone,显示如图(SYSTEM为SQL默认美国时间,而我们中国要比他们迟8小时)

show variables like '%time_zone%';

在这里插入图片描述

2、修改默认时间:

set global time_zone='+8:00';

3、设置完重新打开命令行,进入mysql,查询Time Zone,即可完成,
在这里插入图片描述
4、回到Java代码中再次运行

特别提醒

mysql8.0的注册驱动 注意是 com.mysql.cj.jdbc.Driver

Class.forName("com.mysql.cj.jdbc.Driver");

原文链接:https://blog.csdn.net/weixin_38888926/article/details/89476144
原文链接:https://blog.csdn.net/HW_870754395/article/details/88430293

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值