AIX oracle 监听问题处理

来源:互联网 发布:中国贵族学校知乎 编辑:程序博客网 时间:2024/05/16 17:30
塔吉克 现场的系统报联接不上数据库
 
ORACLE 10g 
AIX
 
检查监听,发现报错,错误如下
 
 

$ lsnrctl reload

LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production on 16-AUG-2012 13:00:26

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=loopback)(PORT=1521)))
TNS-12535: TNS:operation timed out
TNS-12560: TNS:protocol adapter error
  TNS-00505: Operation timed out
   IBM/AIX RISC System/6000 Error: 78: Connection timed out
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))

$ lsnrctl status

LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production on 16-AUG-2012 12:56:30

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=loopback)(PORT=1521)))
TNS-12535: TNS:operation timed out
TNS-12560: TNS:protocol adapter error
  TNS-00505: Operation timed out
   IBM/AIX RISC System/6000 Error: 78: Connection timed out
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))

到admin 下查找监控的日志,也没有发现什么,

检查listener.ora 发现在host 为lookback ,这个名字不是主机的名字的。

修正为正确的host 名字。还是不行

ps -ef|grep tnsls

发现有两个进程,很奇怪。。

经查此是oracle 一个bug ,现将情况贴下

Applies to:

Oracle Net Services - Version: 10.1.0.3.0 to 10.2.0.2.0 - Release: 10.1 to 10.2
Information in this document applies to any platform.
All new connections via TNS listener hang, no errors reported

Checked for relevance on 05-FEB-2010.

Description

Intermittently the TNS listener hangs and new connections to the database are not possible.



Likelihood of Occurrence

The issue is that the TNS listener can hang under load if a second spawned listener process is not closed (remains persistent). Secondary listener processes are not unusual, depending on traffic as well as when the OS grep snapshot is taken. However, a persistent secondary process (longer than say 5 second) is not normal and may be a result of this referenced problem.

TNS listener can hang at any time and effect standalone or RAC systems

Possible Symptoms

Listener process can also consume high amount of CPU

Child TNS listener process is seen when doing a ps on the listener process, eg.:

$ ps -ef | grep tnslsnr 

ora10g 8909 1 0 Sep 15 ? 902:44 /u05/10GHOME/DBHOME/bin/tnslsnr sales -inherit 
ora10g 22685 8909 0 14:19:23 ? 0:00 /u05/10GHOME/DBHOME/bin/tnslsnr sales -inherit 

Killing the child process allows new connections to work until the problem reoccurs




Workaround or Resolution


Issue is fixed in 10.2.0.3 Patch Set
Oracle Support recommends patching to 10.2.0.5 as this the lastest release

- OR -

Apply Patch 4518443 for the problem (if a patch is available)

- OR -

As a workaround, two steps should be done:

1. The following parameter can be added to listener.ora

SUBSCRIBE_FOR_NODE_DOWN_EVENT_<listener_name>=OFF

Where <listener_name> should be replaced with the actual listener name configured in the LISTENER.ORA file. This parameter is to be placed by itself on an empty line / at the end of file.

For example, if the listener name is LISTENER (default), the parameter would be:

SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER=OFF


2. Locate the ons.config file in the 10g(rdbms) home and rename it to something else.
For example:
cd $ORACLE_HOME/opmn/conf
mv ons.config ons.config.orig

The listener needs to be restarted after these changes.

This will both prevent the listener from registering against ONS (Oracle Notification Services), which is the area affected by bug:4518443, as well as disable ONS itself. For more information on ONS, please refer to the specific Oracle documentation, for example, for 10.2, see the Oracle10g Release 2 Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide.

Please note, that adding the SUBSCRIBE_FOR_NODE_DOWN_EVENT_<listener_name> to listener.ora file on RAC and disabling the ONS file, will mean that FAN (fast application notification) will not be possible. SeeNote 220970.1 RAC: Frequently Asked Questions for further information on FAN. Therefore, if you have a RAC configuration, then apply the patch and do not disable ONS or FAN.

Also, please note that this might happen with ANY 10g installation, whether it is RAC related or not, and whether there is an Oracle Application installation or not.