【问题标题】:Cannot load JDBC driver class 'oracle.jdbc.driver.OracleDriver' apache beam无法加载 JDBC 驱动程序类 'oracle.jdbc.driver.OracleDriver' apache 梁
【发布时间】:2021-08-23 14:30:34
【问题描述】:

我正在运行以下代码,但我收到有关 Oracle 类名称的错误。我已经使用 oracle jar 文件设置了类路径环境变量,但它不起作用。有人可以帮助我吗?我不知道还能做什么。非常感谢任何帮助

这是错误:原因:java.sql.SQLException: Cannot load JDBC driver class 'oracle.jdbc.driver.OracleDriver'

import apache_beam as beam
from apache_beam.options.pipeline_options import PipelineOptions
from apache_beam.io.jdbc import ReadFromJdbc
import os;

os.environ["JAVA_HOME"] = "/home/jupyter/env/java/jre1.8.0_291"
os.environ["PATH"] = "/home/jupyter/env/java/jre1.8.0_291/bin"
os.environ["ORACLE_HOME"] = "/home/jupyter/env/instantclient_21_1/"
os.environ["CLASSPATH"] = "/home/jupyter/env/ojdbc6-11.2.0.4.jar" 
 
with beam.Pipeline(options=PipelineOptions()) as p:
      result = (p
          |  'Read from jdbc' >> ReadFromJdbc(
              fetch_size=None,
              table_name='log_table',
              driver_class_name='oracle.jdbc.driver.OracleDriver',
              jdbc_url='jdbc:oracle:thin://xx.x.xxx.xxx:xxxx/xxxxx',
              username='xxxxxxxx',
              password='xxxxxxxx',                  
          ))
         

【问题讨论】:

标签: java python oracle jdbc apache-beam


【解决方案1】:

你能试试下面的建议吗?

  • 仔细检查驱动程序路径位置。
  • 验证文件权限,可能需要以管理员身份执行。
  • 检查数据库是否已启动并正在运行。
  • 验证端口号和凭据。
  • 查看此post,它包含了很棒的见解。

【讨论】:

  • 谢谢!!我已经做了所有这些,但它不起作用。我会读这篇文章,也许我没有做某事。
猜你喜欢
  • 2013-07-28
  • 2019-12-05
  • 2015-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-19
  • 2017-05-17
相关资源
最近更新 更多