Navicat连接Oracle报错: ORA-28040 No matching authentication protocol

时间:2024-03-31 18:36:36

https://blog.csdn.net/wanghailong_qd/article/details/85887825

Navicat版本为12.0.29, Oracle数据库版本为12c. 新建一个数据库连接, 填写完主机, 服务, 用户名, 密码等信息后点击测试连接报错: ORA-28040 No matching authentication protocol.

 

错误原因就是oci.dll版本不匹配, 通常是过低, 即低版本的oci.dll连接高版本Oracle. 解决办法就是将oci.dll更换为高版本.

oci, racle call interface. 以动态链接库(dll, Dynamic Link Library)方式实现的Oracle访问接口. 而在java开发中常用的ojdbc.jar, 则是纯java实现, 以java socket进行通信的.

点击选工具菜单 -> 选项
Navicat连接Oracle报错: ORA-28040 No matching authentication protocol

重新选择, 可以看到Navicat自带的instant client版本为10_2. 下载一个最新版本的Oracle instant client, 并选择里面的oci.dll文件即可. 配置完成后需要重启Navicat才会生效

官网下载后,解压,然后配置如下:

C:\Program Files\PremiumSoft\Navicat Premium\instantclient_18_5

即可

下载地址:

https://www.oracle.com/database/technologies/instant-client/downloads.html

我的是window 64的。 点击进去,选择版本,选18的(往下滚就看到了)

Navicat连接Oracle报错: ORA-28040 No matching authentication protocol

Navicat连接Oracle报错: ORA-28040 No matching authentication protocol