我正在尝试将我的数据写入mysql表。当我尝试写作时,我得到了No suitable driver found for jdbc:mysql://dbhost。
作为预处理的一部分,我从同一个DB中的其他表中读取数据,没有问题。我可以完成完整的运行,并将行保存到一个parquet文件中,因此它肯定是从mysql读取的。
我提交文件时使用:
spark-submit --conf spark.executor.extraClassPath=/home/user/Downloads/mysql-connector-java-5.1.35-bin.jar --driver-class-path /home/user/Downloads/mysql-connector-java-5.1.35-bin.jar --jars /home/user/Downloads/mysql-connector-java-5.1.35-bin.jar main.py
我写这篇文章时说:
df.write.jdbc(url="jdbc:mysql://dbhost/dbname", table="tablename", mode="append", properties={"user":"dbuser", "password": "s3cret"})
发布于 2015-06-23 20:33:14
这是一个与类加载程序相关的错误。这是它的票:https://issues.apache.org/jira/browse/SPARK-8463,这是它的拉请求:https://github.com/apache/spark/pull/6900。
解决办法是将mysql-连接器-java-5.1.35-bin.jar复制到与驱动程序相同的位置的每台机器上。
发布于 2015-06-18 00:35:34
似乎您在Spark中触发了一个bug。似乎有一个修复,提交是e991255e7203a0f7080efbd71f57574f46076711 (参见mbox/spark-commits/201505.mbox/%3C6ec5793fb810447388384f3ac03ca670@git.apache.org%3E ),它将问题描述为“问题在java.sql.DriverManager类中,无法访问由ClassLoader加载的驱动程序”。可能最简单的解决方案是尝试来自master的最新版本,或者失败--选择提交到您的分支中。
https://stackoverflow.com/questions/30904182
复制相似问题