ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle网络配置

oracle网络配置

原创 Linux操作系统 作者:wang_0720 时间:2013-11-06 14:40:49 0 删除 编辑
在oracle网络配置中有三个文件很重要
1、listener.ora:存在于服务器端
2、tnsnames.ora:存在于客户端
3、sqlnet.ora:存在于服务器端,或客户端,或者两者都有,它用来对所有连接和监听进行高级选项配置,如各种安全规则,加密方式。
这三个文件都位于$ORACLE_HOME/network/admin文件夹中,可以通过指定环境变量TNS_ADMIN来改变他们的位置;本例中放在/u01/app/oracle/product/10.2.0/db_1/network/admin下。

1 sqlnet.ora作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来决定怎么样找一个连接中出现的连接字符串
例如客户端输入sqlplus sys/sys@orcl
如果sqlnet.ora类似如下配置
NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)
那么,客户端就会首先在tnsnames.ora文件中找orcl的记录.如果没有相应的记录则尝试把orcl当作一个主机名,通过网络的途径去解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例。
如果配置NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)那么客户端就只会从tnsnames.ora查找orcl的记录,括号中还有其他选项,不常用。

2 tnsnames.ora这个文件类似于unix的hosts文件,提供的tnsname到主机名或者ip的对应,只有当sqlnet.ora中类似NAMES.DIRECTORY_PATH= (TNSNAMES) 这样的配置,也就是客户端解析连接字符串的顺序中有TNSNAMES时,才会尝试使用这个文件。
PROTOCOL:客户端与服务器端通讯的协议,一般为TCP,该内容一般不用改。
HOST:数据库侦听oracle服务器的IP或主机名
PORT:数据库侦听oracle服务器正在侦听的端口,可以察看服务器端的listener.ora文件或在数据库侦听所在的机器的命令提示符下通过lnsrctl status [listener name]命令察看。此处Port的值一定要与数据库侦听正在侦听的端口一样。
SERVICE_NAME:和服务器端listener.ora中的SID_LIST_LISTENER下的SID_NAME保持一致,用system用户登陆后,sqlplus> show parameter service_name命令察看。
PROGRAM = extproc 注释掉

3 listener.ora listener监听器进程的配置文。接受远程对数据库的接入申请并转交给oracle的服务器进程。如果不是使用远程的连接,listener进程就不是必需的,同样的如果关闭listener进程并不会影响已经存在的数据库连接

客户端远程连接oracle服务器的过程如下
当输入sqlplus sys/sys@orcl的时候
1. 查询sqlnet.ora看看名称的解析方式,发现是TNSNAME
2. 则查询tnsnames.ora文件,从里边找orcl的记录,并且找到主机名,端口和service_name
3. 如果listener进程没有问题的话,建立与listener进程的连接。
4. 根据不同的服务器模式如专用服务器模式或者共享服务器模式,listener采取接下去的动作。默认是专用服务器模式,没有问题的话客户端就连接上了数据库的server process。
5. 这时候网络连接已经建立,listener进程的工作也就完成了

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27181165/viewspace-775856/,如需转载,请注明出处,否则将追究法律责任。

上一篇: oracle开机自启动
请登录后发表评论 登录
全部评论

注册时间:2013-11-05

  • 博文量
    111
  • 访问量
    913641