Incompatible version of libocijdbc[Jdbc:122010, Jdbc-OCI:121020

问题描述

相关问题:utPLSQL CLI failing with Incompatible version of libocijdbc error · Issue #114 · utPLSQL/utPLSQL-cli · GitHub

由于jdbc和jdbc-oci版本不一致,导致数据库连接不上

解决策略

jdbc对应的是jdbcx.jar(x可能为6,7,8等),数据库连接驱动;而jdbc-oci对应的是jdbc client的版本

  1. 策略一:修改jdbcx.jar的版本(将12.2降级为12.1,版本与保持jdbc-oci一致)

    相关的jar包下载:JDBC and UCP Downloads page (oracle.com)

    该缺陷是不知道jdbcx.jar内驱动的具体版本,需要一个个试

  2. 策略二:修改jdbc client版本(将12.1升级为12.2,版本和jdbc保持一致)

    oracle client下载地址:Instant Client for Microsoft Windows (x64) 64-bit | Oracle 中国

    注意:安装完毕后,注意配置环境变量时,要将新下载的client置于原client之上,即可优先加载

    缺陷是新加入的client由于版本不同,需要将程序部署到服务器时,可能会影响其他程序

  3. 策略三:不使用oci连接数据库,改用thin

    oci 连接数据库依赖于oracle client,但是如果改用thin方式连接,即可摆脱client版本约束

    相关参考: Oracle开发jdbc thin与 oci 连接方式 区别 - 掘金 (juejin.cn)

    缺陷是oci性能更好,这种修改是以性能为代价的

相关推荐
葫芦和十三15 分钟前
图解 MongoDB 21|选举与 failover:Primary 是怎么选出来的
后端·mongodb·agent
GetcharZp41 分钟前
26k Star 开源内网穿透神器 NetBird,一分钟实现全球设备互联!
后端
考虑考虑1 小时前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯2 小时前
GoF设计模式——中介者模式
java·后端·spring·设计模式
lizhongxuan4 小时前
多Agent之间的区别
后端
杨充6 小时前
1.面向对象设计思想
后端
IT_陈寒7 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
systemPro7 小时前
2.6亿条设备数据,历史查询从超时到50ms,我做了什么
后端
要阿尔卑斯吗7 小时前
提示词优化启示:为什么“按顺序输出“比“关键度评分“更有效
后端
她的男孩8 小时前
后台接口加密别只会 HTTPS,ForgeAdmin 的 RSA + SM4/AES 源码拆解
后端·面试·开源