Navicate Premium连接Oracle 11g 时的常见异常
最初navicate是自己写点东西时连接MySQL用的,考虑到以后可能会连接别的数据库,所以没有下载Navicate for MySQL版本,下载的是Navicate Premium。今天在用Navicate Premium 连接Oracle 11g 时出现了一些预想之外的错误。
根据IP和服务名创连接数据库时
结果出乎意外的报了一个ORA-28547的错误:连接服务器失败,可能是Oracle Net 管理错误
造成这个错误的原因就是Navicat安装目录下Navicat Premium\instantclient_10_2下的oci.dll文件不给力,自己下载一个替换掉就可以了。
解决方法:
1.前往“http://www.oracle.com/technetwork/database/database-technologies/instant-client/downloads/index.html”
2.选择与自己系统以及数据库匹配的“Instant Client”。
3.将下载的压缩包解压缩,然后将解压缩的文件夹放到Navicat Premium目录下
4.打开Navicate(我的是Navicate 12,其他版本下述操作步骤可能会略有不同),工具-->选项-->环境-->OCI环境-->OCI library(oci.dll),前往刚才解压缩后放在Navicat Premium目录下的文件夹内,选择oci.dll,替换掉之前的oci.dll。
5. 重启Navicate!!!!
当然了在这儿过程中也是踩过坑的,下载的压缩文件文件一定要和自己的navicate版本,数据库版本以及系统版本一致,我的操作系统是Win8 64位,Navicate是Navicate 12.0.11(64bit),数据库是Oracle 11g(11.2.0.1.0)-64bit,所以下载的oci.dll一定要对应Oracle 11.2并且为64位版本。但是当初并没有考虑到这一点,先是下载了一个一个32位的instantclient-basic-nt-11.2.0.4.0.zip,后来又下载了一个 64位的instantclient-basic-win64-10.2.0.5.zip,解压后选中了相应的oci.dll,仍然会报一个"Oracle library is not loaded."或者"Cannot load OCI DLL……"的错误。大概意思就是不能正确加载oci.dll或者Oracle相应的库,如果报这个错应该是oci.dll版本和Navicate版本或者Oracle版本不一致造成的。
阅读更多
- Oracle 11g 安装时常见异常信息及解决方案
- oracle 11g JDBC连接数据库:IO异常The Network Adapter could not establish the connection 解决方法
- PowerDesigner15连接Oracle数据库并导出Oracle的表结构步骤及常见设置
- Oracle中删除用户和表空间的常见问题(比如:ORA-01940无法删除当前已连接用户的解决方案)
- ORACLE 11g远程连接数据库
- Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务
- oracle_sqldeveloper连接Oracle异常总结
- java连接MySQL、Sql Server、Sysbase、Oracle等7种常见数据库
- Oracle 11g ORA-12514 TNS:监听程序当前无法识别连接描述符中请求的服务
- C#连接Oracle 11g 无需安装Oracle客户端
- Windows下Oracle 11g远程连接配置
- oracle常见异常类型
- VC8 + OCCI 连接oracle 11g(11.2)
- 连接本地Oracle 11g时 ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务
- PL/SQL Developer连接本地Oracle 11g 64位数据库
- Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务
- Oracle 11g DRCP连接方式
- Tomcat7中配置Oracle 11g数据库DBCP连接池
- oracle14连接NL Exception was generated异常问题
- Oracle 10g 异常:ORA-01092: ORACLE 实例终止。强制断开连接 解决方案