kettle通过severice_name连接oracle数据源踩坑

最近在研究kettle做数据抽取核对,按照官网安装kettle后无法连接oracle

坑1:kettle 连接oracle的数据库名指的是sidname 而非severicename,前期一直使用severicename 如下始终报错

注意区分下:

SID:一个数据库可以有多个实例,SID是用来标识这个数据库内部每个实例的名字.

SERVICE_NAME:是这个数据库服务名。

我的测试服务器是一个实例,下挂了两个小库,只能通过severicename连接,且为pdb库。具体连接方式的不同如下:

XML 复制代码
jdbc:oracle:thin:@//host:port/service_name
jdbc:oracle:thin:@host:port:SID
//注意服务名,使用"/",这是与sid的区别

坑2:改为通过severicename连接oracle,odbc驱动版本问题

通过severicename连接oracle网上大家列了很多方式,这里不展开了,但我检查了服务器数据库版本和驱动,确保驱动版本版本一致,仍报错无法连接,按照网上方式会宝另一个错误:ORA-01005: null password given; logon denied

因为驱动版本没问题就没再更换,怀疑识别的用户名密码有误,又去oracle官网查了下12c的驱动,发现ojdbc8的驱动有两个,一个6M,一个3m,目前我使用的是6m的,而官网还有个3m的,我又换成了3m的,连接成功了

具体原因还是没有太明白,有大神了解的可以科普下,不知道是否是JDK版本和数据库驱动兼容性的问题。花费了一下午,真的服了。

相关推荐
AI人工智能+电脑小能手15 分钟前
【大白话说Java面试题 第84题】【Mysql篇】第14题:为什么用 InnoDB 存储引擎的表建议用整型的自增主键?
java·开发语言·数据库·mysql·面试
张彦峰ZYF25 分钟前
检索增强生成(RAG)系统的基础:全面深入矢量数据库
数据库·大模型·rag
Elastic 中国社区官方博客1 小时前
我们如何在 Elasticsearch Serverless 上将向量搜索吞吐量提升一倍
大数据·数据库·人工智能·elasticsearch·搜索引擎·云原生·serverless
一 乐1 小时前
高校实习信息发布网站|基于Spring Boot的高校实习信息发布网站的设计与实现(源码+数据库+文档)
java·数据库·spring boot·后端·论文·毕设·高校实习信息发布网站
weelinking1 小时前
【产品】11_实现后端接口——数据在背后如何流动
java·人工智能·python·sql·oracle·json·ai编程
zgl_200537792 小时前
源代码:跨数据库通用SQL语法解析与标注拆解
大数据·数据库·数据仓库·sql·etl·源代码管理
雪度娃娃2 小时前
存储器层次结构——磁盘硬盘存储
服务器·网络·数据库·计算机组成原理
暴力求解3 小时前
Mysql数据库基础
数据库·mysql·操作系统
意倾城3 小时前
MySQL最左前缀匹配原则
数据库·mysql
暴躁小师兄数据学院3 小时前
【AI大数据工程师特训笔记】第13讲:数据库性能手术刀
大数据·数据库·数据仓库·sql·postgresql