1. 出现的问题...
下午工作时想连接Oracle数据库,使用的是Navicat Premium 12 。
数据库地址、用户名、密码、端口号都没有问题,但出现了ORA-28547:connection to server failed, probable Oracle Net admin error
的错误。
2. 问题的原因
查了半天,发现是由于Navicat Premium 12自带的oci.dll
文件的版本和服务器端的Oralce数据库的版本不一致造成的。(navicat连接oracle数据库ORA-28547:connection to server failed, probable Oracle Net admin error错误,解决方法)
3. 解决方案
我们需要下载最新的instantclient-basic-win-x86-64-11.2.0.1.0.zip
从Oracle官方网站中下载 Instant Client
下载完成后解压到任意文件夹内。
打开Navicat的选项->环境,将OCI library中的oci.dll改为你刚才解压的文件夹中的oci.dll(注意不要单独用解压出来的oci.dll去替换Navicat中的oci.dll,也不要把oci.dll单独拿出来,否则会报无法创建OCI handler的错误)
4. 踩过的坑
我一开始自作聪明,把解压后的oci.dll文件单独拿出来,然后在Navicat中选择这个dll文件,结果一直出现无法创建OCI handler的错误。