linux oracle10.2.0.1 lsnrctl无法启动(二)

2014-11-24 12:25:21 · 作者: · 浏览: 1
"sdtprocess" (Solaris), or "top" show that the listener process (tnslsnr) is using a large amount of cpu.

ID Name Owner CPU% RAM Size Started Parent
-----------------------------------------------------------------------------------------------
21145 tnslsnr mseibt 44 9440 22368 13:36:03 1 /u01/app/oracle/product/10.1.0/bin/tnslsnr LISTENER -inherit

4) The 10g(iAS) $ORACLE_HOME/opmn/log on the same system shows the following repeating error in the ons logs:

04/10/01 13:30:43 [4] Local connection 0,127.0.0.1,6100 missing form factor
04/10/01 13:30:43 [4] Local connection 0,127.0.0.1,6100 missing form factor
04/10/01 13:30:43 [4] Local connection 0,127.0.0.1,6100 missing form factor
04/10/01 13:30:43 [4] Local connection 0,127.0.0.1,6100 missing form factor
04/10/01 13:30:43 [4] Local connection 0,127.0.0.1,6100 missing form factor

Changes
- Both 10g(iAS) and Oracle 10g(rdbms) are installed on the same system.
- Oracle 10g (non-RAC) is installed on a system with or without other Oracle installations.

Cause
The Oracle Notification Server (ONS) running in the 10g(iAS) home uses the ports defined in $ORACLE_HOME/opmn/conf/ons.config. The database listener, which is an ONS client, also utilizes the ONS ports identified in its own $ORACLE_HOME/opmn/conf/ons.config. When 10g(iAS) and 10g(rdbms) are installed on the same box, the installer will mistakenly configure identical ONS ports in both homes which creates an operational conflict when both the 10g(iAS) ONS and 10g(rdbms) listener services are running.

In non-RAC environments where Oracle 10g is the only Oracle product on the system, the existence of the ons.config may still cause a hang condition in the listener.

Solution
This issue is corrected in versions 10.2.0.3 and higher.
(or apply backport patch <<4518443>>)

You may also use either of the following 2 workarounds to address this problem:

1) In the 10g(rdbms) home, rename the $ORACLE_HOME/opmn/conf/ons.config file (so that the listener does not find or use it).

For example:

cd $ORACLE_HOME/opmn/conf
mv ons.config ons.config.orig

(then restart the listener)


- or -


2) Explicitly disable the 10g TNS Listener from subscribing to the ONS.

Edit the active 10g listener.ora file and add the parameter below:

SUBSCRIBE_FOR_NODE_DOWN_EVENT_=OFF

where would be replaced with the actual listener name configured in the listener.ora file.

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

SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER=OFF

(then restart the listener)


References
BUG:3881276 - LISTENER HANGS INTERMITTANTLY AFTER APPLYING 10.1.0.3 PATCHSET
BUG:6017068 - PMON SPINNING IN NETWORKING CODE

作者“麦地坞”