一、背景
本机配置:win7 64位
本机同时安装了oracle服务器端和客户端
服务器端:11gR2; 客户端:oracle10g32位(由于项目需要,必须安装此客户端)
二、报错描述
先安装的11gR2,用Navicat连接正常,后面再安装10g32位的客户端后,连接报错:oracle library is not loaded
三、报错原因
因为当前连接的数据库的oci.dll和navicat中配置的oci.dll不一致
截图如下,发现此时navicat配置的是客户端的dll,而当前连接的数据库是11gr2的,所以两个dll不一致,故无法连接
四、解决办法
选择适合的oci.dll,在navicat中配置即可。
注意:配置后,一定要重启navicat
因为本机装有11gr2的服务端,连接的又是11g的数据库,故navicat中配置本机11gr2中的oci.dll即可
此时,再次连接,显示成功
若本机中没有连接的数据库对应的oci文件,在官网中下载对应的客户端连接版本
oracle的客户端官网:https://www.oracle.com/database/technologies/instant-client/downloads.html
根据需求下载对应的版本,然后解压,放到一个目录下,在navicat中配置该目录中oci文件所在的目录,然后重启navicat即可
下载相关的具体操作,参考此文档:https://www.cnblogs.com/ggll611928/p/15459933.html
- oracle Navicat library loaded notoracle navicat library loaded oracle解决方案navicat library shared file libraries loading shared libraries loading libxml2 libjemalloc libraries loading cannot shared permission libraries loading imagemagick libraries loading libjpeg libraries libtinfo loading办法 navicat library数据库 方法 keepalived libnetsnmpmibs libraries loading