RHEL linux 在修改了hostname之后,突然发现Oracle的监听启动不了,也停止不了。如下:
[oracle@zzbank ~]$ lsnrctl start
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 27-AUG-2013 21:59:45
Copyright (c) 1991, 2009, Oracle. All rights reserved.
Starting /u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 11.2.0.1.0 - Production
System parameter file is /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Log messages written to /u01/app/diag/tnslsnr/zzbank/listener/alert/log.xml
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=zzbank)(PORT=1521)))
TNS-12542: TNS:address already in use
TNS-12560: TNS:protocol adapter error
TNS-00512: Address already in use
Linux Error: 98: Address already in use
Listener failed to start. See the error message(s) above...
解决办法:
[oracle@zzbank ~]$ ps -ef|grep LISTENER
oracle 4562 1 0 21:44 ? 00:00:08 /u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr LISTENER -inherit
oracle 5740 5611 0 22:02 pts/1 00:00:00 grep LIS
kill 4562 因为已有监听在启动,kill掉进程即可。
再次启动即可。
--转自