Navicat Premium 是一个可多重连接的数据库管理工具,它可让你以单一程序同時连接到 MySQL、SQLite、Oracle 及 PostgreSQL 数据库,让管理不同类型的数据库更加方便。最重要的是它不用装Oracle客户端。
下边简单介绍一下 Navicat Premium 连接 Oracle 客户端的方法。
如果你的机器已经装有 Oracle 数据库的话,那很简单,Navicat Premium可以直接连接到 Oracle 。
如果没装,那 Navicat 会提示你需要安装 Oracle 客户端,如果不是必要,千万别装 Oracle 客户端,先不说它的块头很大,有四五百兆,装完后你很难卸载干净。
根据 Navicat 官方的文档,其实只需要下载 Oracle 的 Instance Client 即可。这个包只包含一些 dll 文件,无需安装解压即可。
要根据所要连接的 Oracle 版本来下载 Instance Client 的版本,对应关系如下:
Oracle 9i 或者更新的版本,需要使用 Instance Client 11 这个版本
Oracle 8 和 8i 用 Instance Client 10 版本。
另外必须注意的时候,只能下载 32 位版本,因为 Navicat 不支持 64 位的版本,另外要下载 Basic 版本 (40M),而不是 Basic Lite 版(11兆),因为 Basic Lite 版不支持中文,连接的时候会告诉你服务器端的编码不被支持。
下载完毕后解压到任意一个目录,然后打开 Navicat -> 工具 -> 选项 -> OCI ,在 OCI library 地方选择解压的目录下的oci.dll文件,确定后即可。
接下来就是新建一个 Oracle 连接,注意连接类型必须选择 Basic,否则你就又要搞很多配置文件。

Navicat for Oracle连接属性设置:

这里填写需要注意的是服务名或SID的填写,下面你勾选的是什么输入框里需要填写对应的值,这个值可以从Oracle的安装目录里的tnsnames.ora获取到。

如果本地安装了Oracle数据库的话,这个文件的目录F:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora

下面记录一下我碰到的问题:

当点击连接测试时,如果出现ORA-28547,如图:

解决方法:

用oracle安装文件目录F:\app\Administrator\product\11.2.0\dbhome_1\BIN
下的oci.dll替换了navicat安装文件目录D:\Navicat for Oracle\instantclient_10_2
下的oci.dll,之后就能连上了。

ORA-12737: Instant Client Light: unsupported server character set CHS16GBK 貌似也可以用同样的方法解决。

这个错误是很典型的,是由于服务器的编码不支持造成的,但是如果我改变了服务器的字符集编码,这是不现实的,所以解决的方案是要去Oracle官网下载一个最新版的OCI的文件,将原先Navicat的OCI文件覆盖即可。和上面直接在本地Oracle安装文件下找OCI文件是一样的。

ORA-12514:TNS:listener does not currently know of service requested in connect descriptor

侦听器目前并不知道连接描述符中请求的服务,出现以上问题的原因是服务名或SID这一项我写错了,如果选服务名,就必须填全局数据库名。如果选SID,就直接填写当前连接的SID名,对应服务器上数据库配置文件里的tnsnames.ora文件中的SID = ORADB。如下所示

ORADB_124.248.41.12 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 124.248.41.12)(PORT = 1521))
)
(CONNECT_DATA =
(SID = ORADB)
(SERVER = DEDICATED)
)
)

今天最后还碰到一个ORA-01017的错误,看来是有点晕,密码写错了造成的。

使用 Navicate 连接 Oracle9i 数据库的更多相关文章

  1. 使用 PLSQL 连接 Oracle9i 数据库

    昨天用了Navicate连接Oracle数据库,不停的掉线,然后死机,只能重启Navicate,没办法,还是用回plsql吧,重装了一遍(之前重装系统后,电脑自带的公司原有的软件没啦) 先安装了Ora ...

  2. 用navicate 连接本地数据库提示用户名/口令无效

    1.在用navicate连接本地的oracle数据库时,试了oracle几个默认的用户名和密码,但是当我输入时,却提示用户名/口令无效.所以按照网上的办法,cmd,输入了以下命令,修改了几个用户的用户 ...

  3. 解决navicate 连接mysql数据库中文乱码的问题

    以下均是ubuntu12.04为准 1.修改mysql的配置文件. 1.1.vi  /etc/mysql/my.conf找到[client]在其下面添加 default-character-set=u ...

  4. Navicate Premium连接Oracle数据库报错

    Navicat Premium连接MySQL数据库没有问题,在连接Oracle数据库的时候报错,提示:ORA-28547:connection to server failed,probable Or ...

  5. 用Navicat连接Oracle数据库时报错ORA-28547:connection to server failed,probable Oracle Net admin error

    用Navicat连接Oracle数据库时出现如下错误 上网一查原来是oci.dll版本不对.因为Navicat是通过Oracle客户端连接Oracle服务器的,Oracle的客户端分为两种,一种是标准 ...

  6. navicat 连接oracle数据库报错:ORA-28547:connection to server failed,probable Oracle Net admin error

    链接:http://pan.baidu.com/s/1dEO9qJR 密码:ye2c 用Navicat连接Oracle数据库时出现如下错误 上网一查原来是oci.dll版本不对.因为Navicat是通 ...

  7. 用ASP.Net(C#)连接Oracle数据库的方法及实例

    今天看了一下asp.net连接oracle数据库的方法,得到了如下代码.这段代码打开了MyTable表,并把操作员的名字列出.字段类型是OracleString.读取的时候用的是字段编号,我不知道怎么 ...

  8. atitit.client连接oracle数据库的方式总结

    client连接oracle数据库的方式总结 文件夹 Java程序连接一般使用jar驱动连接.. ... 桌面GUI一般採取c语言驱动oci.dll 直接连接... 间接连接(须要配置tns及其env ...

  9. navicat连接远程数据库报错'client does not support authentication protocol requested by server consider ...'解决方案

    [1.cmd终端连接远程mysql数据库方法] mysql -uhello -pworld   -h192.168.1.88 -P3306 -Dmysql_oa mysql -u用户名 -p密码 -h ...

随机推荐

  1. source tree使用经验

    FeatureXXX具体功能开发分支,从develop分支拉,功能开发自测完后合并到develop分支.来不及上线的feature分支不要合并到develop. develop开发分支,上面代码都是已 ...

  2. Vue.js连接后台数据jsp页面  ̄▽ ̄

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  3. Hibernate 再接触 总结

  4. Github(远程仓库) 2

    远程仓库之前就添加好了 今天弄了简单的查看远程库,提取远程库,在线修改以及本地更新修改,推送到远程仓库,删除远程仓库,参考http://www.runoob.com/git/git-remote-re ...

  5. spring cloud 总结

    Finchley版本Spring Cloud Finchley; Spring Boot 2.0.3 史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)(Fin ...

  6. js中遇到的一些方法和函数

    这是一个笔记文章,方便日后复习. 加号的优先级高于三目运算符: console.log(') ? 'define' : 'undefine');//define setTimeout(code,mil ...

  7. 查看SQL语句的真实执行计划

    DBMS_XPLAN包中display_cursor函数不同于display函数,display_cursor用于显示SQL语句的真实的执行计划,在大多数情况下,显示真实的执行计划有助于更好的分析SQ ...

  8. DBHelper类

    import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import ja ...

  9. FortiGate下视频会议等语音相关配置

    关闭老的基于会话的alg机制(即删除session-helper中的SIP条目) config system session-helper delete 13  #删除sip end

  10. python note 03 切片及对字符串操作

    1.计算 1 - 2 + 3 ... + 99 中除了88以外的数之和 i = 1 sum = 0 while i < 100 : if i == 88 : i = i + 1 continue ...