解决Navicat连接Oracle数据库时出现的ORA-28547错误

数据库管理和数据迁移的过程中,Navicat 作为一款功能强大的数据库管理工具,被广大开发者所青睐。然而,在使用 Navicat 连接 Oracle 数据库时,有时会遇到 ORA-28547 错误,提示:ORA-28647: connection to server failed, probable Oracle Net admin error,如下图。

图片[1]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张

这一错误的出现,往往是由于 Navicat 中 OCI(Oracle Call Interface)的版本与 Oracle 数据库版本不匹配所致。

解决办法

为了解决这个问题,我们需要进行以下操作:

1、查询Oracle数据库版本

首先,我们需要知道正在使用的 Oracle 数据库版本,可以通过在 Oracle 数据库中执行 select * from v$version 命令来查询,这将返回数据库的版本信息,包括版本号和修订号,如下图。

select * from v$version;
图片[2]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张
图片[3]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张

2、下载对应Oracle Instant Client

一旦我们知道了 Oracle 数据库的版本,我们就可以从 Oracle 官网 下载对应版本的OCI.dll动态库。请注意,必须选择与您的 Oracle 数据库版本完全匹配的 Oracle Instant Client,下载文件时,需要注册一个 Oracle 账号。

https://www.oracle.com/database/technologies/instant-client/downloads.html
图片[4]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张

3、更新 Oracle Instant Client

下载后,将 instantclient 文件夹中的所有文件覆盖到 Navicat 的 instantclient 目录下。例如:C:\Program Files\PremiumSoft\Navicat Premium 16\instantclient_11_2,如下图。

图片[5]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张
图片[6]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张

另外,如果在配置过程中遇到“Oracle library is not loaded”错误,如下图,这通常意味着 oci.dll 的版本与 Oracle 数据库版本不匹配。

图片[7]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张

在这种情况下,您可以选择“工具”菜单,然后选择“选项”。在选项窗口中,选择“环境”选项卡,然后在“OCI环境”部分,更改 OCI library 路径为刚刚捆绑的 Oracle Instant Client,例如:C:\Program Files\PremiumSoft\Navicat Premium 16\instantclient_11_2\oci.dll,如下图。最后,点击“确定”保存设置。

图片[8]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张
图片[9]-解决Navicat连接Oracle数据库时出现的ORA-28547错误-十一张

完成上述配置后,务必重启 Navicat 客户端,以确保新的配置能够生效。

总结

1、下载的 Oracle Instant Client 版本和 Oracle 版本有关,和 Navicat 版本无关。
2、需要把下载的 Oracle Instant Client 全部文件覆盖到 Navicat 的 instantclient 目录下,而不是单个 oci.dll 文件。

温馨提示:本文最后更新于2025-10-26 00:18:52,某些文章具有时效性,若有错误或下载地址失效,请在文末评论区留言
© 版权声明
THE END
如果觉得这篇文章对您有帮助,可以收藏本网址,方便下次访问!
点赞20 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容