首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 教學

Spoon Kettle 連線 Oracle 失敗:缺少 JDBC 驅動程式完整解決方案

     編輯:Oracle 教學

Kettle (PDI) 連線 Oracle 報錯「Driver class not found」徹底解決

錯誤現象

Driver class 'oracle.jdbc.driver.OracleDriver' could not be found,
make sure the 'Oracle' driver (jar file) is installed.

根因

Kettle 預設不內建 Oracle JDBC 驅動 (授權限制),需手動放置 ojdbc*.jar 至類別路徑。

解決步驟

  1. 取得驅動檔:
    • 若本機已安裝 Oracle Client/Server:搜尋 $ORACLE_HOME/jdbc/lib/ojdbc*.jar (如 ojdbc6.jar for JDK6, ojdbc7.jar for JDK7, ojdbc8.jar for JDK8)。
    • 或從 Oracle 官網下載:JDBC/UCP 下載頁。
  2. 放置至 Kettle lib 目錄:
    # Windows 範例
    copy ojdbc8.jar "data-integration\lib\"
    # 或 data-integration\libswt\win32\
    # Linux/Mac
    cp ojdbc8.jar data-integration/lib/
    
  3. 重啟 Spoon:必須完全關閉並重新啟動 Spoon,否則類別載入器不會重新掃描 lib 目錄,錯誤持續存在。
  4. 驗證:Spoon → 新增資料庫連線 → 選 Oracle → 測試 → 成功。

常見坑點

  • JDK 版本與 ojdbc 版本不匹配 (JDK 8 必須用 ojdbc8.jar 或更新版)。
  • 放錯目錄:需放在 data-integration/lib/ 或 data-integration/libswt//,放在 plugins/ 或其他目錄無效。
  • 多版本共存導致類別衝突:lib 目錄下**僅保留一個** ojdbc*.jar。

補充:MySQL 連線失敗常見原因

若遇 MySQL 連線錯誤,通常是帳號權限問題:

-- 允許 root 遠程連線
UPDATE mysql.user SET Host='%' WHERE User='root';
FLUSH PRIVILEGES;
Kettle 本身只是 ETL 引擎,資料庫連線問題 90% 是驅動缺失或權限設定,排查順序:驅動檔 → 版本匹配 → lib 目錄 → 重啟 Spoon → 網路/防火牆 → DB 帳號權限。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved