直接步入正题:
软件版本 | value |
---|---|
oracle | Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production |
驱动 | ojdbc8.jar ,orai18n.jar |
JDK | 1.8 |
ETL | Spoon 7.1 |
这事是发生在昨天,因之前连接oracle的时候,可以进行连接,但是真正用它的时候连接不上了,后期就问运维的大哥,他说从12C 已经升级到了19C, sid都没改变。
咱们先讲连接问题,这个sid 也是个坑!
因上边提了一下需求,需要从oracle(之前12C版本,现19C版本),将数据进行增量迁移到 click house中。
在使用kettle连接数据库时,提示一下报错:
错误连接数据库 [MarColor] : org.pentaho.di.core.exception.KettleDatabaseException:
Error occurred while trying to connect to the database
Error connecting to database: (using class oracle.jdbc.driver.OracleDriver)
Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
org.pentaho.di.core.exception.KettleDatabaseException:
Error occurred while trying to connect to the database
Error connecting to database: (using class oracle.jdbc.driver.OracleDriver)
Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
因问题解决了,就不给你们还原现场了。
咱们分析一下:提示12505 listener does not currently know of SID given in connect descriptor 侦听器不知道连接描述符中给定的SID
咱们肯定去找这个原因对吧?
sid 报错, 就去急忙找运维大哥,大哥说好像版本升级了,但是sid 肯定没改。
当时真想以德服人!
19C 驱动需要 ojdbc8.jar ,orai18n.jar
我的JDK是1.8版本 ,各位童鞋注意一下! 不同JDK下载的也是不同的!
oracle 链接地址 :https://www.oracle.com/database/technologies/appdev/jdbc-ucp-19-7-c-downloads.html
我们需要将 orai18n.jar 包下载下来,ojdbc8.jar(之前已经下载过了)。
链接:https://pan.baidu.com/s/1Tx5n60T2UA6WW9GBr_cODA
提取码:zxcv
将下载后的jar包放入到 kettle 的 lib 下,
重点! ojdbc14.jar 改成.bak 文件! 不然还会连接错误!
扩展名这个如何找不用问了吧?
算了还是说一下得了,因为我的是工作虚拟机用的是windows Server 2012 其实都差不多哈
找到文件 -》查看-》文件扩展名√勾 ! 其实都是并在一排的
改完之后 重启,再去连接!
如果再有问题,可以及时联系,如果有时间的话,肯定能够帮助解答。