Oracle监听器—静态注册

注册就是将数据库作为一个服务注册到监听程序。客户端不需要知道数据库名和实例名,只需要知道该数据库对外提供的服务名就可以申请连接到数据库。这个服务名可能与实例名一样,也有可能不一样。

注册分:
1. 静态注册
2. 动态注册


静态注册

为了静态注册一个实例,我们需要在 listener.ora中添加相应监听器条目。

这里我们建立了两个LISTENER(LISTENER — 默认的,LISTENER1 - 自己新建的),服务名(全局数据库名)分别为test,test1。

下面是我的listener.ora文件的内容。位置: C:oracleproduct10.2.0db_1NETWORKADMINlistener.ora

LISTENER =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = Tough)(PORT = 1521))
  )

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = test)
      (ORACLE_HOME = C:oracleproduct10.2.0db_1)
      (SID_NAME = ora11g)
    )
  )  

  
LISTENER1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = Tough)(PORT = 1522))
  )

SID_LIST_LISTENER1 =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = test1)
      (ORACLE_HOME = C:oracleproduct10.2.0db_1)
      (SID_NAME = ora11g)
    )
  )

 


C:>lsnrctl

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 07-4月 -2014 12:56:43

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

欢迎来到LSNRCTL, 请键入"help"以获得信息。


//可以查看lsnrctl下可以执行的命令,常用到的是start, stop, status, reload, services
LSNRCTL> help
以下操作可用
星号 (*) 表示修改符或扩展命令:

start               stop                status
services            version             reload
save_config         trace               change_password
quit                exit                set*
show*


//如果只输入start,则启动默认监听器 LISTENER
LSNRCTL> start LISTENER
启动tnslsnr: 请稍候...

TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为c:oracleproduct10.2.0db_1 etworkadminlistener.ora
写入c:oracleproduct10.2.0db_1 etworkloglistener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1521)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Tough)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
启动日期                  07-4月 -2014 12:56:49
正常运行时间              0 天 0 小时 0 分 1 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          c:oracleproduct10.2.0db_1 etworkadminlistener.ora
监听程序日志文件          c:oracleproduct10.2.0db_1 etworkloglistener.log
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1521)))
服务摘要..
服务 "test" 包含 1 个例程。
  例程 "ora11g", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功


//如果只输入status,则查看默认监听器 LISTENER状态
LSNRCTL> status LISTENER
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Tough)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
启动日期                  07-4月 -2014 12:56:49
正常运行时间              0 天 0 小时 1 分 9 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          c:oracleproduct10.2.0db_1 etworkadminlistener.ora
监听程序日志文件          c:oracleproduct10.2.0db_1 etworkloglistener.log
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1521)))
服务摘要..

服务 "ora11g" 包含 1 个例程。
  例程 "ora11g", 状态 READY, 包含此服务的 1 个处理程序...

服务 "ora11gXDB" 包含 1 个例程。
  例程 "ora11g", 状态 READY, 包含此服务的 1 个处理程序...
服务 "ora11g_XPT" 包含 1 个例程。
  例程 "ora11g", 状态 READY, 包含此服务的 1 个处理程序...

服务 "test" 包含 1 个例程。
  例程 "ora11g", 状态 UNKNOWN, 包含此服务的 1 个处理程序...

命令执行成功

 

蓝色部分是动态注册的监听器的状态。红色部分是我们静态注册的监听器的状态。


//若不是启动默认监听器 LISTENER,则需要指定启动的监听器
LSNRCTL> start LISTENER1
启动tnslsnr: 请稍候...

TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为c:oracleproduct10.2.0db_1 etworkadminlistener.ora
写入c:oracleproduct10.2.0db_1 etworkloglistener1.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1522)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Tough)(PORT=1522)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER1
版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
启动日期                  07-4月 -2014 12:57:07
正常运行时间              0 天 0 小时 0 分 1 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          c:oracleproduct10.2.0db_1 etworkadminlistener.ora
监听程序日志文件          c:oracleproduct10.2.0db_1 etworkloglistener1.log
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1522)))
服务摘要..

服务 "test1" 包含 1 个例程。
  例程 "ora11g", 状态 UNKNOWN, 包含此服务的 1 个处理程序...

命令执行成功


LSNRCTL> status LISTENER1
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Tough)(PORT=1522)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER1
版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
启动日期                  07-4月 -2014 12:57:07
正常运行时间              0 天 0 小时 1 分 13 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          c:oracleproduct10.2.0db_1 etworkadminlistener.ora
监听程序日志文件          c:oracleproduct10.2.0db_1 etworkloglistener1.log
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1522)))
服务摘要..

服务 "test1" 包含 1 个例程。
  例程 "ora11g", 状态 UNKNOWN, 包含此服务的 1 个处理程序...

命令执行成功

 


建立好监听器后,我们还需要在客户端机器上的tnsnames.ora设置相关条目。位置:C:oracleproduct10.2.0db_1NETWORKADMIN nsnames.ora


A =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = tough)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = test)
    )
  )

 

A1 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = tough)(PORT = 1522))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = test1)
    )
  )

 

 

测试静态注册的监听器:

C:>sqlplus /@a as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 4月 7 13:11:37 2014

Copyright (c) 1982, 2005, Oracle.  All rights reserved.


连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

 

C:>sqlplus /@a1 as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 4月 7 13:11:54 2014

Copyright (c) 1982, 2005, Oracle.  All rights reserved.


连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

 

连接成功!

 


 

 

原文地址:https://www.cnblogs.com/toughhou/p/3778818.html