Kettle8.2連線Oracle資料庫失敗解決方法

灰寨小學--python小陳發表於2020-11-07

本地oracle:(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = orcl)))

url: 

kettle7.1連線Oracle資料庫正常,但是今天連線另一個版本的Oracle資料庫報錯
在這裡插入圖片描述
在這裡插入圖片描述
網上說是Oracle的ojdbc相關的jar包版本問題,除了換jar包還有個方法可解決:(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.XX.XX.XX)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = db_name)))
jdbc連線資料庫的時候,需要使用資料庫的sid_name,而不是資料庫的services_name
如下,直接在資料庫名稱那一欄填上資料庫的SID_NAME,可以去tnsnames.ora檔案裡找;填過SID_NAME後 主機名稱和埠號那兩欄就不用填了。
檢視資料庫的sid_name語句:select INSTANCE_NAME from v$instance;
在這裡插入圖片描述
在這裡插入圖片描述

相關文章