11gR2raclinstener监听配置

两个节点host,ipvip ,scan的信息
#eth0-Public IP
162.12.0.1    cqltjcpt1
162.12.0.3    cqltjcpt2

#eth2 PRIVATE IP
192.12.0.1   cqltjcpt1-prvi
192.12.0.3   cqltjcpt2-prvi

#VIP
162.12.0.5   cqltjcpt1-vip
162.12.0.7   cqltjcpt2-vip

#SCAN
162.12.0.9   cqltjcptscan



11G rac中,监听文件默认配置在grid用户下

[root@cqltjcpt2 ~]# su - grid
[grid@cqltjcpt2 ~]$ cd $ORACLE_HOME
[grid@cqltjcpt2 grid]$ cd network/admin/
[grid@cqltjcpt2 admin]$ ll

-rw-r--r-- 1 grid oinstall  189 Jan  7 21:21 endpoints_listener.ora
-rw-r--r-- 1 grid oinstall  350 Jan  7 21:21 listener.ora
drwxr-xr-x 2 grid oinstall 4096 Jan  7 21:04 samples
-rw-r--r-- 1 grid oinstall  205 May 11  2011 shrept.lst
-rw-r--r-- 1 grid oinstall  227 Jan  7 21:21 sqlnet.ora

Oracle 11.2版本后,有一个新的监听文件endpoints_listener.ora被引进,里面的内容是节点的IP和VIP信息

Endpoints_listener.ora 文件的作用是向后兼容11.2版本以前的数据库,DBCA建库时,需要通过获取endpoints的位置信息来配置数据库参数和tnsnames


[grid@cqltjcpt2 admin]$ more endpoints_listener.ora 
LISTENER_CQLTJCPT2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
(HOST=cqltjcpt2-vip)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=162.12.0.3)(PORT=1521)(IP=FIRST))))               

由于用hosts解析配置本例中没有配置DNS,只有一个scan listener 此时scan监听只运行在Node1上

[grid@cqltjcpt2 admin]$ ps -ef | grep tnslsnr
grid      9840     1  0 Jan07 ?        00:00:22 /u01/oracle/grid/bin/tnslsnr LISTENER -inherit
grid     22674 21922  0 11:08 pts/1    00:00:00 grep tnslsnr

[grid@cqltjcpt2 ~]$ ssh cqltjcpt1
[grid@cqltjcpt1 ~]$ ps -ef | grep  tnslsnr
grid      8211     1  0 Jan07 ?        00:00:44 /u01/oracle/grid/bin/tnslsnr LISTENER -inherit
grid      8380     1  0 Jan07 ?        00:00:02 /u01/oracle/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
grid     22060 22021  0 11:08 pts/1    00:00:00 grep tnslsnr

从ps -ef输出可以看到,无论是scan监听,还是本地监听都是运行在grid用户的oracle_home下


NODE2本地监听指向的是vip地址162.12.0.7 ,因为rac是通过vip对外提供服务


[oracle@cqltjcpt2 ~]$ sqlplus  / as sysdba

SQL> show parameter local_listener

NAME            TYPE        VALUE
--------------- ---------- --------------------------------------------------------------------------------
local_listener  string      (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=162.12.0.7)(PORT=1521))))

remote_listener指向的是scan监听名

SQL> show parameter remote_listener             

NAME               TYPE         VALUE
-----------------  -----------  ------------------------------
remote_listener    string       cqltjcptscan:1521


切换至grid用户

[root@cqltjcpt2 ~]# su - grid
[grid@cqltjcpt2 ~]$ cd $ORACLE_HOME/network/admin
[grid@cqltjcpt2 admin]$ ls
endpoints_listener.ora  listener.ora    samples  shrept.lst  sqlnet.ora

查看监听文件内容
[grid@cqltjcpt2 admin]$ more listener.ora

LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))                 

LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))             

ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON               

ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON                


最下面两行参数涉及ENABLE_GLOBAL_DYNAMIC_ENDPOINT参数,ENABLE_GLOBAL_DYNAMIC_ENDPOINT参数的作用是允许监听程序接受针对oracle 11.2版本之前未进行动态注册的连接


查看监听状态,可以看到cqltgsqz2实例已经运行
[grid@cqltjcpt2 ~]$ srvctl  status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): cqltjcpt1,cqltjcpt2


[grid@cqltjcpt2 ~]$ lsnrctl status listener

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 08-JAN-2013 10:58:30

Copyright (c) 1991, 2011, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date                07-JAN-2013 22:44:03
Uptime                    0 days 12 hr. 14 min. 26 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/oracle/grid/network/admin/listener.ora
Listener Log File         /u01/oracle/app/oracle/diag/tnslsnr/cqltjcpt2/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=162.12.0.3)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=162.12.0.7)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
  Instance "+ASM2", status READY, has 1 handler(s) for this service...
Service "cqlthxqf" has 1 instance(s).
  Instance "cqlthxqf2", status READY, has 1 handler(s) for this service...
Service "cqlthxqfXDB" has 1 instance(s).
  Instance "cqlthxqf2", status READY, has 1 handler(s) for this service...
Service "cqlthxqz" has 1 instance(s).
  Instance "cqlthxqz2", status READY, has 1 handler(s) for this service...
Service "cqlthxqzXDB" has 1 instance(s).
  Instance "cqlthxqz2", status READY, has 1 handler(s) for this service...
Service "cqltjcpt" has 1 instance(s).
  Instance "cqltjcpt2", status READY, has 1 handler(s) for this service...
Service "cqltjcptXDB" has 1 instance(s).
  Instance "cqltjcpt2", status READY, has 1 handler(s) for this service...
The command completed successfully

当前名称:11gR2raclinstener监听配置
文章起源:http://azwzsj.com/article/ppeoio.html