我正在使用Spark读写操作来读取/写入oracle数据库以下是代码片段:
empDF = spark.read
.format("jdbc")
.option("url", url)
.option("driver", "oracle.jdbc.driver.OracleDriver")
.option("ssl", True)
.option("sslmode", "require" )
.option("dbtable", query)
.option("user", "******")
.option("password", "******")
.load()
但是我需要添加oracle ssl证书来连接到数据库。我试着使用我添加到/tmp位置的钱包和tnsnames.ora文件。我在URL中添加了以下格式。
url = "jdbc:oracle:thin:@apm_url?TNS_ADMIN=/tmp"
但仍然收到以下错误,无法连接
调用o104.load时出错。IO错误:IO错误PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到到请求目标的有效证书路径,连接时间间隔30毫秒,身份验证时间间隔0毫秒。
您正在使用的Oracle JDBC驱动程序的版本是什么?查看有关使用Oracle钱包的快速入门指南。类路径中需要有oraclepki.jar、osdt_core.jar和osdt_cert.jar。