1、py4j.protocol.Py4JJavaError: An error occurred while calling o51.load. : java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
通常是使用python连接mysql时报的错误,大概意思是找不到 com.mysql.cj.jdbc.Driver 这个类。
我第一次解决时在pycharm里下载了一个pymysql,没有解决掉。
随后上网查了查,发现是少了一个jar包,就去下载了对应数据库版本的jar包,记住,一定要对应数据库版本,不然就不知道啥时候会报一个版本不一致的错误。我的mysql数据库的版本是8.0.26,就下载了一个mysql-connector-java-8.0.26.jar
想要下载我这个的,就在下面的百度网盘里下载
通过网盘分享的文件:jar包
链接: https://pan.baidu.com/s/1EtHF8p6fM_NC3GwIqAJ-XQ?pwd=1234 提取码: 1234
需要其他版本的就去官网下载
https://dev.mysql.com/downloads/connector/python/
2、java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed
表明正在使用的 JDBC 驱动在尝试建立数据库连接时,无法通过公钥检索方式获取服务器的SSL证书。通常发生在MySQL8等高版本上
1.url配置了SSL
2.url中添加 allowPublicKeyRetrieval=true
url: jdbc:mysql://localhost:3306/study
useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true