原帖地址:http://blog.sina.com.cn/s/blog_519029800100n6ue.html
1. 修改主机的hostname 后, 使用 dbstart 启动数据库,发现数据库可以启动,但是 listener 无法启动,报错:
TNS-12537 : TNS:connection closed
TNS-12560: TNS:protocol adapter error
TNS-00507: connection closed
linux error : 29:iiiegal seek
以上信息就与listener的配置文件 listener.ora 有关
修改主机的hostname 的步骤:
1. 修改 /etc/hostname ,添加新的hostname,如果要立即生效使用hostname 命令
2.重启oracle 数据库(此时最好是只重启数据库, 如果使用 dbstart ,那么 listener可能无法正常启动),查询instance 信息
sqlplus /nolog
conn /as sysdba;
shutdown immediate;
startup;
select * from v$instance;
可以查看到 HOST_NAME 应该已为修改后的新主机名
3. 修改 listener.ora ,把 HOST 段改为新的主机名
4. 修改 tnsname.ora , 修改相应 HOST 为新的主机名
6. 重启 listener
./bin/lnsrctl stop
./bin/lnsrctl start