问题背景:

客户反映无法连接数据库,10g监听出现bug


处理过程:

查看数据库状态,open正常,查看监听卡死,无法正常显示监听状态


lsnrctl stat

lsnrctl stop

均无法出现正常结果,且不能自行终止,只能crtl c终止

进行cpu和内存的查看

aix:


topas


svmon


ps aux|sort -k4,4nr|head -n 10

使用率均正常,无明显超标占用

进行查看监听进程,发现存在两个监听进程,进行kill进程1无法恢复,两个进程全部kill后并注册,监听正常


/app/oracle/admin/orcl/bdump$ps -ef|grep tns

  oracle  8912944        1   0   Mar 02      - 900:30 /app/product/10.2.0/db/bin/tnslsnr LISTENER -inherit

  oracle 14811284  8912944   0 16:02:32      -  0:00 /app/product/10.2.0/db/bin/tnslsnr LISTENER -inherit

  oracle 24248380 13697044   0 16:54:01  pts/0  0:00 grep tns

  

  

  

  alter system register;

 相关资料:

 oracle 10g的一个bug,bug号为4518443,

 解决方案如下:

 安装patch 45184432、增加listener参数

SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER=OFF