繁体   English   中英

Oracle SQL Developer - JDBC 驱动程序问题

[英]Oracle SQL Developer - Issue with JDBC Driver

我有:

  • 视窗 7 x64
  • 我的 11G Oracle 客户端如下 C:\\Oracle\\product\\11.2.0\\client_1
  • 我的 SQL Developer(下载了包含 JDK 8 的工具包,但为了以防万一,单独安装了 JSK)目录如下 C:\\sqldeveloper

当我尝试使用 TNS 连接时,我有

java.library.path 中没有 ocijdbc12

如果我转到 Settings -> Database -> Advanced 并手动选择我的 Oracle 目录,我会得到:

测试位于 C:\\Oracle\\product\\11.2.0\\client_1 的 Oracle Home 测试客户端目录 ... OK 测试加载 Oracle JDBC 驱动程序 ... OK 测试检查 Oracle JDBC 驱动程序版本 ...失败:最低驱动程序版本 11.2。需要 0.3,指定驱动版本为 11.2.0.1.0

所以我考虑升级 JDBC 驱动程序,但我不能使用检查更新功能,因为它似乎在我的虚拟机中被阻止。

我从SQL developer目录中得到ojdbc7.jar,复制到C:\\Oracle\\product\\11.2.0\\client_1\\jdbc\\lib,现在出现如下错误:

测试位于 C:\\Oracle\\product\\11.2.0\\client_1 的 Oracle Home 测试客户端目录 ... OK 测试加载 Oracle JDBC 驱动程序 ... OK 测试检查 Oracle JDBC 驱动程序版本 ... OK 驱动程序版本:12.1.0.2 .0 测试本机 OCI 库负载...

失败:加载本机 OCI 库时出错 无法加载本机 OCI 驱动程序。 系统属性java.library.path 包含来自环境变量PATH 的条目。 检查它以验证
预期的本机库目录

C:\\Oracle\\product\\11.2.0\\client_1\\bin 存在并且在任何其他客户端安装之前。 java.library.path = C:\\sqldeveloper\\jdk\\jre\\bin;C:\\Windows\\Sun\\Java\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Oracle\\product\\10.2.0 \\client_1\\bin;C:\\Oracle\\product\\11.2.0\\client_1\\bin;C:\\Oracle\\product\\11.2.0\\client_2;C:\\Oracle\\product\\11.2.0\\client_2\\bin;C: \\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\ARQDISP\\;C:\\Program ;.

不知道此时我在做什么。 能否请你帮忙?

它缺少的驱动程序。 因此,就我而言,我从http://www.oracle.com/technetwork/topics/winx64soft-089540.html安装了 Oracle 客户端,并相应地设置了路径变量。

这是一篇博客文章,展示了如何告诉 SQL Developer 在哪里以及使用哪个安装的客户端:

https://www.thatjeffsmith.com/archive/2014/01/oracle-sql-developer-4-and-the-oracle-client/

重新启动您的 SQL Developer。

我有类似的问题。 从 sqldeveloper 4.0 移动到 4.1,导入了我的所有连接,但在 4.1 中,我会得到“java.library.path 中没有 ocijdbc12”。 我打开了我当前的连接(右键单击任何连接并选择属性),所有这些连接类型都是 TNS。
'Connect Identifier' 与在那里输入的连接网络别名进行了检查。
我选中了“网络别名”复选框并选择了相同的名称,然后连接正常工作。
我回到 4.0 以检查我在那里的连接,似乎别名在选择了“连接标识符”的情况下工作正常,但在 4.1 中却没有,我必须更新我所有的许多连接以使用“网络别名”。

加载本机 OCI 库时出错无法加载本机 OCI 驱动程序,并且在尝试连接到数据库时,我在 java.library.path 中找不到 ocijdbc12

对我来说,在我创建了一个新变量 ORACLE_HOME 后,该错误得到了解决,其值为 ....(sql 开发人员安装的文件夹的路径) \\jdk\\jre 然后我添加了 Path 变量%ORACLE_HOME%\\bin的乞求。

起初,我创建了一个系统变量,该变量指向 dev express 的安装文件夹,但它不起作用

对于数据库,选择连接属性并将连接类型从 TNS 更改为 Basic 并提供连接的其他详细信息(服务名称/SID)为我解决了问题

也许它有助于查看我关于类似主题的帖子的答案:

如何让Sqldeveloper 19.1 64位在没有管理员权限的Windows企业PC上使用instantclient_12_2?

提到的 .bat 文件显示了您需要的所有内容。 如果您具有更改任何环境变量的管理员权限或权限,那么不使用 .bat 文件可能是更好的方法。

当我尝试使用 TNS 连接时,我有

java.library.path 中没有 ocijdbc12

同时,我发现的东西是如此愚蠢和有趣。

我得到了同样的错误,唯一的区别是什么时候可以,什么时候不是......

the TNS definition in tnsnames.ora

只需添加(如果它消失了,可能再添加一次)数据库的 TNS 定义,例如:

XE.WORLD=
  (DESCRIPTION=
    (ADDRESS=
      (PROTOCOL=TCP)
      (HOST=localhost)
      (PORT=1521)
    )
    (CONNECT_DATA=
      (SERVICE_NAME=XE.WORLD)
      (SERVER = DEDICATED)
    )
  )

并重新启动 SQL Developer。

连接配置将保留名称 (XE.WORLD),即使它已经从 tnsnames.ora 中消失。 如果它不存在,则在连接尝试时,它将返回该误导性错误。

我的设置:SQL Developer 4.1.4.21,ojdbc8.jar,连接到 Oracle 19c。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM