navicat cannot load oci dll||oracle 改字符集为GBK后 navicat 连不上||Ora-28547 ora net错误

论坛 期权论坛 脚本     
已经匿名di用户   2022-5-29 19:26   3088   0

此段适用于 解决 navicat cannot load oci dll
环境 Navicat Premium 和 oracle
原因,navicat 32 和64 都只支持 32位的oci.dll(navicat 10以下的版本)
所以得下载32位的 非lite版的 oci.dll
但是:高版本的 10以上的Navicat Premium 支持 32 和 64位的oci.dll
连接失败的话,可能因为 navicat 和 Oracle 一个是32 位一个是 64位。
解决方法:Oracle 是 64位的话用 64位的navicat 。32位的oracle对应 32位navicat
版本对应好了,直接
Navicat 设置OCI 路径:比如我的 E:\oraclexe\app\oracle\product\11.2.0\server\bin\oci.dll,直接设置,重启Navicat就能连接上。


此段适用于 解决 Navicat Oracle 改字符集(AL32UTF8)为(ZHS16GBK)后 navicat 连不上
navicat 自带的OCI.DLL是lite版 ,需下载非lite版,才能支持 oracle 的 GBK编码
但是 高版本的 navicat (10.0以上) 可以直接设置OCI.DLL路径
参考
http://www.coridc.com/archives/2757.html



Navicat 的OCI路径 同上所述。

此段适用于解决 ORA-28547: 连接服务器失败, 可能是 Oracle Net 管理错误


解决方法
命令行 输入 lsnrctl status 或者SQL输入 $lsnrctl status
会返回类似于如下信息

服务摘要..
服务 "CLRExtProc" 包含 1 个实例。
实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 5 个处理程序...
服务 "YMXDB" 包含 1 个实例。
实例 "ym", 状态 READY, 包含此服务的 1 个处理程序...
服务 "orcl" 包含 1 个实例。
实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
服务 "orclXDB" 包含 1 个实例。
实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
服务 "ym" 包含 1 个实例。
实例 "ym", 状态 READY, 包含此服务的 1 个处理程序...
服务 "yuanmeng" 包含 1 个实例。
实例 "yuanmeng", 状态 READY, 包含此服务的 1 个处理程序...
服务 "yuanmengXDB" 包含 1 个实例。
实例 "yuanmeng", 状态 READY, 包含此服务的 1 个处理程序...
命令执行成功


这说明 监听器 启动了应该没问题。
有可能是因为 上面所说的改字符集的那样

(仅因为我遇到并且解决了,因为我下载的32位的oracle XE 版,然后用的是64位 的 navicat,OCI各种不匹配出错

Oracle 把改字符集(AL32UTF8)为(ZHS16GBK)后 navicat登不上,因为默认的 navicat 的oci 路径不是 oracle下oci.dll的路径,而且自带的OCI.DLL是lite版 ,而lite版不支持GBK等编码


解决方法上面已经给出。若不能解决,请百度 ora-28547。

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP