LINUX登录oracle用户,通过lsnrctl start命令启动数据库时,报错如下:
“ [oracle@localhost ~]$ lsnrctl start
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 29-APR-2015
07:38:11Copyright (c) 1991, 2009, Oracle. All rights reserved.
Starting /home/oracle/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr:
please wait…TNS-12537: TNS:connection closed
TNS-12560: TNS:protocol adapter error
Linux Error: 29: Illegal seek“`
原因:
/etc/hosts内有两个localhost的主机名,监听冲突。
解决方法:
1、修改其中一个主机名,比如oracle,执行以下命令。
hostname oracle
2、在/etc/hosts内修改一个主机名为oracle。
[root@oracle etc]# cat /etc/hosts
127.0.0.1 localhost
::1 oracle
3、在/etc/sysconfig/network修改主机名为oracle。