网络环境如下图所示:

clip_image001

工作原理如下:

clip_image002

需要配置三个文件:listener.ora、tnsnames.ora、sqlnet.ora。

一般而言,listener.ora和tnsnames.ora都不会有太大问题,照着说明配就可以,也可以使用Oracle提供的工具来配。但是sqlnet.ora却经常被人忘记,导致客户端连不上服务器。sqlnet.ora是命名方法解析的配置文件,要使tnsnames.ora生效,必须要把TNSNAMES添加到sqlnet.ora中去,如NAMES.DIRECTORY_PATH= (TNSNAMES)。这就是监听器和服务命名都正确的情况下却连不上服务器的原因。

Oracle 9i的5种命名方法

名称 主要特点
本地命名 适合具有少量不经常更改服务的简单分布式网络
目录命名 通过目录服务器进行解析,适合大型网络
Oracle名称(ONAMES) 通过Oracle名字服务器进行解析,适合大型网络
主机命名 通过【计算机名称】进行解析,适合局域网
外部命名 通过非Oracle命名服务进行解析,很少用

 

参考资料:

[1]http://web.rpwtcn.com/article/2006/0722/article_11067.html