今天遇到个问题,想停掉监听,在敲了lsnrctl stop之后一直没有反应,于是kill掉进程,再重启lsnrctl start
系统报错:
[oracle@linux01 admin]$ lsnrctl start
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 21-FEB-2012 10:45:46
Copyright (c) 1991, 2009, Oracle. All rights reserved.
Starting /db/app/oracle/product/11.2.0/db_1/bin/tnslsnr: please wait...
TNS-12537: TNS:connection closed
TNS-12560: TNS:protocol adapter error
TNS-00507: Connection closed
Linux Error: 29: Illegal seek
查阅了下资料,找到了解决办法:
Symptoms
The listener fails to start with the following errors:
TNS-12537: TNS:connection closed
TNS-12560: TNS:protocol adapter error
TNS-00507: Connection closed
Linux Error: 29: Illegal seek
Generic to Unix platforms.Cause
Wrong syntax in hosts file and also due to the the tnslsnr process was enhanced in
10.1.0.3 to support FAN(Fast Application Notification) via
ONS (Oracle Notification Services). This new code opens a socket open on localhost. Therefore
"localhost" should be defined on the system.
This new code opens a socket open on localhost. Therefore "localhost" should be defined on the
system.Fix
Change /etc/hosts file to include
127.0.0.1 localhost.localdomain localhost
于是更改hosts文件,添加
127.0.0.1 localhost
再试,便正常了
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25915379/viewspace-716842/
,如需转载,请注明出处,否则将追究法律责任。