Navicat连接Oracle数据库

Posted liu_Leslie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Navicat连接Oracle数据库相关的知识,希望对你有一定的参考价值。

Navicat连接Oracle数据库

文章目录

1、所用软件版本

  1. Navicat:Navicat Premium 12.1.20
  2. Oracle:Oracle Database 10g Express Edition Release 10.2.0.1.0
  3. windows:Windows 10 企业版 G

2、连接步骤

首先将所有软件下载完成。

  • 1、打开Navicat软件,依次点击进入:工具 --> 选项 --> 环境 ; 如下图:


  • 2、进入环境界面后,可以看到OCI环境选项中的 --> OCI library (oci.dll) * :E:\\oraclexe\\app\\oracle\\product\\10.2.0\\server\\bin\\oci.dll(此处的路径是我安装Navicat软件后默认存在的),我们需要修改此oci.dll文件的路径,否则会报错。

  • 3、路径需要修改成Navicat安装包下的instantclient_10_2文件夹下的oci.dll;此时路径为:E:\\Navicat Premium 12.1.20\\instantclient_10_2\\oci.dll 如下图:

  • 4、连接Oracle数据库,依次点击:连接 --> Oracle 进行新建连接 ; 如下图:

  • 5、新建连接中有一点 “服务名” 需要注意,此服务名需要通过:右击计算机(我的电脑) --> 管理 --> 找到服务和应用程序 --> 点击服务打开服务列表,==找到OracleServiceXE服务名,==将 “XE” 作为服务名填入连接界面中的服务名选项。如下图:


  • 6、其他参数填写如下图,由于我这里数据库安装在本机电脑上,所以我这里的 “主机” 设置成“localhost”;如果连接测试成功即可点击** “确定”**。如下图:



好了,亲们,Navicat已经成功连接Oracle数据库!!!

3、注意事项

1、Oracle library is not loaded 错误

解决方式

将Oracle路径改为Navicat下的oci.dll文件的路径。 E:\\Navicat Premium 12.1.20\\instantclient_10_2\\oci.dll

2、ORA-12514错误

解决方式

将服务名改成XE;“XE”就是之前从计算机管理中的服务与应用程序中查找到的服务OracleServiceXE中截取的后缀服务名。如下图:

navicat 连接oracle 数据库会报错

navicat 直连oracle 数据库会报错
ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK
 
今天使用Navicat连接Oracle数据库,报了下面的这个错误:“ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK”
 
从这个错误上看,可以知道是客户端不支持服务器端的字符集造成的,但是修改服务器端的字符集是不现实的,那我们只能从客户端找原因了。我们知道Navicat连接Oracle使用的是OCI方式,而我安装的Navicat 10 Premium使用的是OCI的Instant Client 10 是不支持除英文以外的其他的字符集的,所以替换掉Navicat使用的OCI的DLL文件即可解决这个问题。
1.Navicat OCI引用位置
可以从Navicat菜单栏“工具”-》“选项”-》“OCI”中找到,如下图所示:
技术分享
 技术分享

技术分享

 

技术分享
 
2.Navicat替换的文件
技术分享
 技术分享

 

3.ORACLE新版本的DLL文件
我本机装的是ORACLE企业完整版的数据库,故其包含连接ORACLE的客户端所需的DLL文件,因此在我本机ORACLE目录:D:\ProgramFiles\Oracle\product\11.1.0\db_1\BIN
下找到如下文件:
技术分享
 技术分享

 

替换了即可
4.重启Navicat
替换文件后,需要重启Navicat,重启后即可应用新版本的OCI。

以上是关于Navicat连接Oracle数据库的主要内容,如果未能解决你的问题,请参考以下文章

Navicat连接Oracle数据库报错ORA-28547解决方法

navicat 连接oracle 数据库会报错

navicat15 连接Oracle数据库 报错ORA-28547: connection to server failed, probable Oracle Net admin error的解决方案

navicat连接oracle报错:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK

navicat连接oracle报错:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK

Navicat:连接Oracle时,提示ORA-28547,Cannot load OCI DLL.193,ORA-03135错误