Oracle 11g2的监听器配置


Oracle的监听器服务注册方式有两种,分别为动态和静态。通过动态注册的服务在lsnrctl status时显示的状态为ready,静态的服务为unknown。

11g2以前的版本,监听器通过listener.ora文件进行配置。在11g2版本中,监听器的配置方式发生了变化,增加了一个新的配置文件endpoints_listener.ora,并且此文件和原来的listener.ora文件都转移到$GRID_HOME/network/admin目录下了。

11g2的监听器的配置信息保存在$GRID_HOME/network/admin/listener.ora和endpoints_listener.ora两个文件中。

文件endpoints_listener.ora的内容如下:

LISTENER_SERV2=
    (DESCRIPTION=
        (
            ADDRESS_LIST=
                (ADDRESS=(PROTOCOL=TCP)(HOST=xxdb2-vip)(PORT=1551))
                (ADDRESS=(PROTOCOL=TCP)(HOST=10.10.10.100)(PORT=1551)(IP=FIRST))
        )
    )         

文件listener.ora的内容如下:

.ora代码

LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))            # line added by Agent
LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))                # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON                # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON              # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_WFG=ON          # line added by Agent

.ora代码

##静态服务注册添加条目
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = servdb)
      (ORACLE_HOME = /u01/oracle/app/oracle/product/10.2.0/db)
      (SID_NAME = servdb1)
    )
  )

如果需要添加静态注册的服务,和以前版本一样是在listener.ora文件中添加相应的条目。

使用lsnrctl status listener检查监听器状态,如下:

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 29-NOV-2012 14:18:34

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                29-NOV-2012 14:11:17
Uptime                    0 days 0 hr. 7 min. 17 sec
Trace Level              off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File  /u01/app/11.2.0.3/grid/network/admin/listener.ora
Listener Log File        /u01/app/grid/diag/tnslsnr/serv2/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.10.10.100)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.10.10.101)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
  Instance "+ASM2", status READY, has 1 handler(s) for this service...
Service "SERVDG2" has 1 instance(s).
  Instance "servdb1", status READY, has 1 handler(s) for this service...
Service "SERVDG2_XPT" has 1 instance(s).
  Instance "servdb1", status READY, has 1 handler(s) for this service...
Service "elvdb" has 2 instance(s).
  Instance "elvdb1", status UNKNOWN, has 1 handler(s) for this service...
  Instance "elvdb2", status READY, has 1 handler(s) for this service...
Service "elvdbXDB" has 1 instance(s).
  Instance "elvdb2", status READY, has 1 handler(s) for this service...
The command completed successfully

在11g2的grid infrastructure上安装oracle 10g,10g的监听器配置文件也要采用$GRID_HOME/network/admin下的文件。

但需要做一个折中操作,将10g的$ORACLE_HOME/network/admin下listener.ora文件设置为$GRID_HOME/network/admin下endpoints_listener.ora的文件链接。

相关内容