[oracle@*****]$ lsnrctl start
LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 12-OCT-2010 17:18:58
Copyright (c) 1991, 2007, Oracle. All rights reserved.
Starting /opt/oracle/product/9.2.0/db_1/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 9.2.0.4.0 - Production
Log messages written to /opt/oracle/product/9.2.0/db_1/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=CMCCWAP-%%%%888)(PORT=1521)))
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-12547: TNS:lost contact
TNS-12560: TNS:protocol adapter error
TNS-00517: Lost contact
Linux Error: 104: Connection reset by peer
开始看到告警以为是hosts配置的问题,检查hosts:
[oracle@******admin]$ more /etc/hosts
127.0.0.1 localhost.localdomain localhost
…………
******************
发现hosts设置正常。
由于采用的动态监听,没有lsnrctl.ora文件,不存在配置问题,同时发现存在sqlnet.ora文件,并配置了validnode_checking,发现当注释掉validnode_checking、invited_nodes 后监听启动正常。
仔细检查该配置发现该配置是从其他主机上cp过来的,nodes中未配置当前主机的IP,导致lsnrctl启动失败,在invited_nodes中添加当前IP,启动正常。