今天安装了一台oracle10gR2数据库,数据库open一切正常,就是监听无法启动,具体信息如下:
启动监听时报错如下:
==============================================
[oracle@oracle bin]$ lsnrctl start
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 16-MAY-200614:20:53
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Starting /u01/app/oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...
TNS-12537: TNS:connection closed
TNS-12560: TNS:protocol adapter error
TNS-00507: Connection closedLinux Error: 29: Illegal seek
==============================================
查了资料找到了原因,原来是修改IP时,把原来系统中的localhost映射到127.0.0.1的回环地址给删掉了。
IXDBA.NET技术社区
解决办法:修改etc/hosts文件,加入localhost映射到127.0.0.1
127.0.0.1 localhost
或者
127.0.0.1 localhost.localdomain localhost
现将监听启动失败的几种可能总结如下:
1、listener.ora或tnsnames.ora文件错误($ORACLE_HOME/network/admin目录下)
解决方法:
a、检查其文件内的Host或Port是否有错
b、备份listener.ora后,用netmgr重新生成一个新的listener.ora(建议)
2、就是上面说到的etc/hosts文件中的localhost映射被删掉
解决方法:
在/etc/hosts文件中直接添加。
注:修改后重启网络服务或重启系统生效。(其实也可以不用启动网络服务,因为监听每次启动都会去检测/etc/hosts文件信息,只要修改,重启监听即可)
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16566331/viewspace-664734/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/16566331/viewspace-664734/