Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103635973
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-04-03 21:35:54

作者:中国IT实验室 来源:中国IT实验室

   最近已经收到多起关于Oracle10g启动两个监听进程的故障报告。
   故障发生时数据库无法通过监听正常建立连接,检查时会发现系统上存在两个监听器进程,其中一个是另外一个的子进程。
一位朋友在我的留言板上给出了以下输出:

local1:/ #ps -ef | grep tnslsnr
oracle 925826 1 0 Apr 06 - 234:50 /u01/app/oracle/product/102/bin/tnslsnr listener1 -inherit
oracle 1081540 925826 0 21:39:39 - 0:00 /u01/app/oracle/product/102/bin/tnslsnr listener1 -inherit

   有朋友在RAC环境下也遇到了类似的问题,在ITPUB上也有一个相关问题的讨论。

    在Metalink上可以找到相关问题的很多解释,这个问题被最终确认为一个BUG,BUG号为:4518443
Oracle称在较大压力下,监听进程可能出现间歇性停止服务,此时Oracle会spaw出另外一个监听进程,进而导致两个监听进程互相影响的故障。

    在非RAC环境下,可以通过在listener.ora中设置参数:
SUBSCRIBE_FOR_NODE_DOWN_EVENT_=OFF
来暂时回避这个BUG。

同时Oracle已经推出了相关Patch用来修正这个问题。

-The End-

阅读(154) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~