TNS Listener Hang, New Child Listener Process Forked
最近幾天客戶有臺資料庫監聽經常掛死,首先檢查監聽的狀態
[wxwl01#/]ps -ef|grep lsnr
oracle 16807 12990 0 11:24:19 ? 0:00 /home/bonc/oracle/OraHome_1/bin/tnslsnr hold -inherit
oracle 12990 1 0 18:11:11 ? 2:22 /home/bonc/oracle/OraHome_1/bin/tnslsnr hold -inherit
有兩個監聽程式產生,並且一個是子程式,此時tnsping、lsnrctl status都掛死。懷疑是oracle的一個監聽器bug,誰叫oracle bug這麼多呢。metalink上一搜就出來了,bug 4518443 ,doc ID 340091.1,如下:
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.:
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.4 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
Where
For example, if the listener name is LISTENER (default), the parameter would be:
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_
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.
對於這個bug的解決方案,一種方法是打上此補丁,此方法需要重啟資料庫;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11088128/viewspace-686907/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Listener refused the connection with the following error:ORA-12514, TNS:listenerError
- TNS問題排查 The listener supports no services
- Oracle Database Server 'TNS Listener'遠端資料投毒漏洞OracleDatabaseServer
- ORA-12514:TNS:listener does not currently know of service requested in connect descriptor
- Listener
- fitter&listener
- JavaWeb-ListenerJavaWeb
- Filter&ListenerFilter
- 7、listener監聽
- 4.5.1.3 srvctl add listener
- listener_scan1.log、listener.log監聽日誌清理
- Presto Event Listener開發REST
- Sanic listener() 方法/函式函式
- ORACLE之手動註冊監聽listener。alter system set local_listener="XXX"Oracle
- 在nodejs中建立child processNodeJS
- Cookie,Session Filter,Listener詳解CookieSessionFilter
- Oracle listener log配置與管理Oracle
- oracle-listener 4GOracle
- Oracle OCP(43):listener.oraOracle
- ORA-00130: invalid listener address
- day25-Listener監聽器
- Oracle listener log 日誌分析方法Oracle
- 深入理解Flutter的Listener元件Flutter元件
- 關於RAC的remote_listenerREM
- SpringBoot如何註冊Servlet、Filter、ListenerSpring BootServletFilter
- JavaWeb三大元件(Servlet、Filter、Listener)JavaWeb元件ServletFilter
- Tomcat深入淺出——Filter與Listener(五)TomcatFilter
- Tomcat 記憶體馬(一)Listener型Tomcat記憶體
- remote_listener引發的故障分析REM
- win10怎麼沒有HomeGroup Listener怎麼辦 win10找不到HomeGroup Listener恢復方法Win10
- 一文快速回顧 Servlet、Filter、ListenerServletFilter
- Node.js child_process模組解讀Node.js
- Git bash Error: Could not fork child process: There are no available terminals (-1)GitErrorAI
- 2024/11/20日 日誌 關於 Filter & ListenerFilter
- oracle清理trace、alert、aud、listener等日誌檔案Oracle
- 【024期】JavaWeb面試題(五):Filter和ListenerJavaWeb面試題Filter
- 2.5.2. 監聽程式(listener)配置——2.5.2.1. netca
- Oracle清理trace、alert、aud、listener.log檔案Oracle
- 2.5.2. 監聽程式(listener)配置——2.5.2.2. netmgr