oracle数据库连接hang,出现了两个listener,一个是另一个子进程
oracle数据库连接hang,出现了两个listener,一个是另一个子进程
处理过程如下
1,出现问题时,用户连接hang住,出现两个listener,现有连接无问题
$ ps -ef|grep lsnr
oracle 26327 1 0 12月 24 ? 5:34 /oracle/product/10.2.0.1/bin/tnslsnr listener -inherit
oracle 16352 12931 1 10:44:26 pts/4 0:00 grep lsnr
oracle 28413 26327 0 21:40:46 ? 0:00 /oracle/product/10.2.0.1/bin/tnslsnr listener -inherit
patrol 29576 29575 0 21:45:19 ? 0:00 /oracle/product/10.2.0.1/bin/lsnrctl stat listener
2,为快速恢复问题,杀掉进程
$ kill -9 26327
3,重启
$ lsnrctl start
lsnrctl for hpux: version 10.2.0.1.0 - production on 26-dec-2012 10:44:54
copyright (c) 1991, 2005, oracle. all rights reserved.
starting /oracle/product/10.2.0.1/bin/tnslsnr: please wait...
tnslsnr for hpux: version 10.2.0.1.0 - production
system parameter file is /oracle/product/10.2.0.1/network/admin/listener.ora
log messages written to /oracle/product/10.2.0.1/network/log/listener.log
listening on: (description=(address=(protocol=tcp)(host=rps02)(port=1521)))
listening on: (description=(address=(protocol=ipc)(key=extproc0)))
connecting to (description=(address=(protocol=tcp)(host=rps02)(port=1521)))
status of the listener
------------------------
alias listener
version tnslsnr for hpux: version 10.2.0.1.0 - production
start date 26-dec-2012 10:44:56
uptime 0 days 0 hr. 0 min. 0 sec
trace level off
security on: local os authentication
snmp on
listener parameter file /oracle/product/10.2.0.1/network/admin/listener.ora
listener log file /oracle/product/10.2.0.1/network/log/listener.log
listening endpoints summary...
(description=(address=(protocol=tcp)(host=rps02)(port=1521)))
(description=(address=(protocol=ipc)(key=extproc0)))
services summary...
service plsextproc has 1 instance(s).
instance plsextproc, status unknown, has 1 handler(s) for this service...
the command completed successfully
4,恢复正常,只有一个listener
$
$ ps -ef|grep lsnr
oracle 16503 1 0 10:44:56 ? 0:00 /oracle/product/10.2.0.1/bin/tnslsnr listener -inherit
oracle 17637 12931 1 10:48:17 pts/4 0:00 grep lsnr
$
5,后续查询metalink,基本确定为bug,需打oracle patch 4518443
详见文件intermittent tns listener hang, new child listener process forked [id 340091.1]
除了打补丁,oracle给出的其它解决方案是
a,修改listener.ora文件
subscribe_for_node_down_event_=off
b,移动ons.config文件
cd $oracle_home/opmn/conf
mv ons.config ons.config.ori
,