昨天晚上接到一个问题:
所管的一套11202的单点asm 监听不正常,应用无法正常连接,系统是hp-ux
登入系统后,查看监听的日志,发现类似WARNING,从网上查
引用:http://www.xifenfei.com/3980.html
SUBSCRIBE_FOR_NODE_DOWN_EVENT_<listener_name>=OFF will prevent the messages
from being written to the log file and may also prevent the TNS Listener from hanging periodically.
Setting SUBSCRIBE_FOR_NODE_DOWN_<listener_name> to OFF disables
a necessary RAC functionality(Oracle Notification Service[ONS],fast application notification[FAN]).
The above workaround is recommended only for non-RAC environments.
The issue may be present in all 10g and newer installations.
设置SUBSCRIBE_FOR_NODE_DOWN_EVENT_<listener_name>=OFF 将不写这个报警日志,也会预防掉周期性的hanging
会将把rac中的ONS关闭(这是rac的必要服务,不推荐在rac上使用这个参数)。
恰好我处理的当前的库,是使用了asm,但只是一个单点库。所以写入了这个参数。
在监听文件中写入:
SUBSCRIBE_FOR_NODE_DOWN_EVENT_<listener_name>=OFF
reload监听:
lsnrctl reload
问题还没有解决。还是无法连接,将监听都关闭后查看相应端口
netstat -tpn(root 执行)
还是有端口占用,且是listener程序,但该程序已经kill掉了,端口却没有释放
这时候通过修改local_listener 将端口指向了1521默认端口(当前实例平日使用别的端口)
手动执行:alter system register
这时候查看原端口,已经释放掉了
再将local_listener修改回去
alter system register
这时查看相关listener,状态已经正常了