免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5552 | 回复: 15
打印 上一主题 下一主题

请教ORACLE的LISTENER的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-11-21 20:21 |只看该作者 |倒序浏览
操作系统:SCO OPENSERVER 5.0.7, ORACLE 7.3.4用户:ora734,SID: MODB (表示My Oracle DataBase)
$ pwd
/u/ora734
$ cat ./app/oracle/product/7.3.4/network/admin/listener.ora
#
# Installation Generated Net V2 Configuration
# Version Date: Sep-16-97
# Filename: Listener.ora
#
LISTENER =
  (ADDRESS_LIST =
        (ADDRESS= (PROTOCOL= IPC)(KEY= MODB))
        (ADDRESS= (PROTOCOL= IPC)(KEY= PNPKEY))
        (ADDRESS= (PROTOCOL= TCP)(Host= mysco507)(Port= 1521))
  )
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME= mysco507.)
      (ORACLE_HOME= /u/ora734/app/oracle/product/7.3.4)
      (SID_NAME = MODB)
    )
  )
STARTUP_WAIT_TIME_LISTENER = 0
CONNECT_TIMEOUT_LISTENER = 10
TRACE_LEVEL_LISTENER = OFF

如果将$ORACLE_HOME/network/admin/listener.ora 复制到 /etc/listener.ora ,或者这样启动 listener:
$ TNS_ADMIN=$ORACLE_HOME/network/admin;         export TNS_ADMIN
$ lsnrctl start
就会报如下的错误:
LSNRCTL for SCO System V/386: Version 2.3.4.0.0 - Production on 21-NOV-10 20:13:48

Copyright (c) Oracle Corporation 1994.  All rights reserved.

Starting /u/ora734/app/oracle/product/7.3.4/bin/tnslsnr: please wait...

TNSLSNR for SCO System V/386: Version 2.3.4.0.0 - Production
System parameter file is /u/ora734/app/oracle/product/7.3.4/network/admin/listener.ora
Log messages written to /u/ora734/app/oracle/product/7.3.4/network/log/listener.log
Attempted to listen on: (DESCRIPTION=(CONNECT_TIMEOUT=10)(ADDRESS=(PROTOCOL=IPC)(KEY=MODB)))
TNS-12532: TNS:invalid argument
TNS-12560: TNS:protocol adapter error
  TNS-00502: Invalid argument
   SCO System V/386 Error: 22: Invalid argument

如果将 /etc/listener.ora中的两行:
        (ADDRESS= (PROTOCOL= IPC)(KEY= MODB))
        (ADDRESS= (PROTOCOL= IPC)(KEY= PNPKEY))
删除,并且不使用TNS_ADMIN环境变量,则lsnrctl start能启动成功:
$ unset TNS_ADMIN
$ lsnrctl start

LSNRCTL for SCO System V/386: Version 2.3.4.0.0 - Production on 21-NOV-10 20:18:01

Copyright (c) Oracle Corporation 1994.  All rights reserved.

Starting /u/ora734/app/oracle/product/7.3.4/bin/tnslsnr: please wait...

TNSLSNR for SCO System V/386: Version 2.3.4.0.0 - Production
System parameter file is /etc/listener.ora
Log messages written to /u/ora734/app/oracle/product/7.3.4/network/log/listener.log
Listening on: (ADDRESS=(PROTOCOL=tcp)(DEV=10)(HOST=192.168.206.3)(PORT=1521))

Connecting to (ADDRESS=(PROTOCOL=TCP)(Host=mysco507)(Port=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for SCO System V/386: Version 2.3.4.0.0 - Production
Start Date                21-NOV-10 20:18:04
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  OFF
SNMP                      OFF
Listener Parameter File   /etc/listener.ora
Listener Log File         /u/ora734/app/oracle/product/7.3.4/network/log/listener.log
Services Summary...
  MODB          has 1 service handler(s)
The command completed successfully

请教这是为什么?$ORACLE_HOME/network/admin/listener.ora中IPC的KEY为SID和PNPKEY的两行到底起什么作用?

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
2 [报告]
发表于 2010-11-22 14:53 |只看该作者
环境好老了啊。这个OS应该都没有了。O也应该很难找得到。佩服楼主。

论坛徽章:
0
3 [报告]
发表于 2010-11-22 16:42 |只看该作者
本帖最后由 ux400 于 2010-11-22 17:09 编辑

谢谢版主回复!其实 ORACLE 7-10g 的 listener.ora 都是类似的,不管什么OS.

(见后面完整帖子)

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
4 [报告]
发表于 2010-11-22 16:43 |只看该作者
回复 3# ux400


    客气了。共同学习。共同提高。

论坛徽章:
0
5 [报告]
发表于 2010-11-22 16:47 |只看该作者
本帖最后由 ux400 于 2010-11-22 16:51 编辑

版主:论坛加了什么限制啊?
我想把 RS/6000 AIX 5L, ORACLE 10g 的一个listener.ora 发上来竟然不行,说有不良内容!

论坛徽章:
0
6 [报告]
发表于 2010-11-22 16:48 |只看该作者
谢谢版主回复!其实 ORACLE 7-10g 的 listener.ora 都是类似的,不管什么OS.

在另外一个环境:RS/6000 AIX 5.3, ORACLE 10g 10.2.0
$ cd $ORACLE_HOME/network/admin
$ cat listener.ora
...
      (ADDRESS = (PROTOCOL = TCP)(HOST = MYRS6000)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )

也是有IPC的那一行,没有/etc/listener.ora 文件,但自动启停ORACLE都没问题:
$ cat /etc/rc.d/rc2.d/S99dbstart
su - oracle -c /home/oracle/app/oracle/product/10.2.0/bin/dbstart
su - oracle -c "/home/oracle/app/oracle/product/10.2.0/bin/lsnrctl start"

所以我就奇怪,IPC的那一行或两行到底是干什么的?我在网上没找到确切的解释。

谢谢!

论坛徽章:
0
7 [报告]
发表于 2010-11-22 16:49 |只看该作者
本帖最后由 ux400 于 2010-11-22 16:50 编辑

上面的... 是 listener.ora 中的几行,说有不良内容,真是太太太太太太太太太太太奇怪了!

论坛徽章:
0
8 [报告]
发表于 2010-11-22 16:52 |只看该作者
本帖最后由 ux400 于 2010-11-22 16:54 编辑

$ cat listener.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = P_L_S_E_x_tP_r_o_c)
      (ORACLE_HOME = /home/oracle/app/oracle/product/10.2.0)
      (PROGRAM = e_x_t_p_r_o_c)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = MYRS6000)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )

论坛徽章:
0
9 [报告]
发表于 2010-11-22 16:57 |只看该作者
本帖最后由 ux400 于 2010-11-22 17:04 编辑
$ cat listener.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = P_L_S_E ...
ux400 发表于 2010-11-22 16:52



上面的下划线的地方就是引起“不良内容”的单词,把下划线去掉,就是 “不良内容”!??????

版主、管理员:我发的帖子的内容怎么说是不良内容?给个说法吧。谢谢!PLS.E.xtProc是不良内容?

论坛徽章:
0
10 [报告]
发表于 2010-11-22 17:01 |只看该作者
『完整回复』:
谢谢版主回复!其实 ORACLE 7-10g 的 listener.ora 都是类似的,不管什么OS.

在另外一个环境:RS/6000 AIX 5.3, ORACLE 10g 10.2.0
$ cd $ORACLE_HOME/network/admin
$ cat listener.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = P☆L☆S☆ExtP☆r☆o☆c)
      (ORACLE_HOME = /home/oracle/app/oracle/product/10.2.0)
      (PROGRAM = extp☆r☆o☆c)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = MYRS6000)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )

也是有IPC的那一行,没有/etc/listener.ora 文件,但自动启停ORACLE都没问题:
$ cat /etc/rc.d/rc2.d/S99dbstart
su - oracle -c /home/oracle/app/oracle/product/10.2.0/bin/dbstart
su - oracle -c "/home/oracle/app/oracle/product/10.2.0/bin/lsnrctl start"

所以我就奇怪,IPC的那一行或两行到底是干什么的?我在网上没找到确切的解释。

谢谢!

注意:为避免论坛说我的帖子有“不良内容”,不得已在上面的单词中间加了☆号,实际内容是应该去掉☆号的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP