ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle 双监听器启动时报tns-01106错误

oracle 双监听器启动时报tns-01106错误

原创 Linux操作系统 作者:paulyibinyi 时间:2009-10-26 16:36:29 0 删除 编辑

环境:

在一台主机上有两个oracle用户,每个用户装有一个数据库实例,分别有各自的监听名
在启动一个监听后,然后再启动另外一个监听时报TNS-01106错误

oracle@p570 admin]$lsnrctl start listener2

LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.2.0 - Production on 04-JUN-2008 11:08:59

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

TNS-01106: Listener using listener name LISTENER has already been started

每个用户的listener.ora配置如下:

SID_LIST_gzthgk =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /ora_tygk/app/product/10.2.0/db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = gzthgk)
      (ORACLE_HOME = /ora_tygk/app/product/10.2.0/db_1)
      (SID_NAME = gzthgk)
    )
  )

gzthgk =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.160.8.35)(PORT = 1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )

 

SID_LIST_nstrong=
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /ora_ywgl/app/product/10.2.0/db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = nstrong)
      (ORACLE_HOME = /ora_ywgl/app/product/10.2.0/db_1)
      (SID_NAME = nstrong)
    )
  )


nstrong =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.160.8.51)(PORT = 1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )


主要原因nstrong和gzthgk的key为EXTPROC0相同导致,所以有一个启动了,会导致另外一个启动不了
解决方法:把其中一个listener的key=EXTPROC0改为key=EXTPROC1,或者去掉这一行
         (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

两个监听启动都正常。

 

 


 

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

请登录后发表评论 登录
全部评论
学习数据库

注册时间:2007-12-11

  • 博文量
    907
  • 访问量
    6894208