问题背景:通过Spark SQL的jdbc去读取Oracle数据做测试,在本地的idea中没有报任务错误。但是打包到集群的时候报:
Exception in thread “main” java.sql.SQLException: No suitable driver
测试代码:
def read(spark: SparkSession): DataFrame = {val jdbcDF = spark.read.format("jdbc").option("url", "jdbc:oracle:thin:@ip:1521:orcl").option("dbtable", "SPARTA.BAYONET_VEHICLEPASS10").option("user", "SPARTA").option("password", "hik12345").load()jdbcDF
}
在本地测试通过,服务器会报如上截图的错误。最后通过排查发现是少了一句要制定driver的类型
.option("driver", "oracle.jdbc.driver.OracleDriver")