折磨我半天的bug(MySQL-JDBC)——You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

原因大概是MySQL的版本是8.0,而我使用的MySQL驱动版本较低(5.1.40版本)

存在驱动mysql-connector-java兼容问题,导致一直报该错误,直到我尝试升级MySQL驱动mysql-connector-java(8.0.20版本)之后,问题总算解决。

参考链接:https://blog.csdn.net/AOBO516/article/details/93370637#%E5%8D%87%E7%BA%A7MySQL%E9%A9%B1%E5%8A%A8mysql-connector-java%E5%8D%87%E7%BA%A7%E5%88%B08.0.X%E7%89%88%E6%9C%AC

 

然后又出现了新的问题:

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.

新版本JDBC驱动类的“com.mysql.jdbc.Driver”已经过时了,改成“com.mysql.cj.jdbc.Driver”了。说我没有配置时区,查了一下,原来从JDBC6.0开始驱动类使用了新的,并且url中必须要设置时区,否侧会报错。那按照规定改就行了。

解决方法:在url的最后添加?serverTimezone=UTC(UTC表示标准时区)

参考链接:https://blog.csdn.net/q1406689423/article/details/89845338

 

posted @   Y鱼鱼鱼Y  阅读(2918)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示