近期在启动监听器的时候收到了TNS-01201: Listener cannot find executable...的错误提示。这个错误还真是一个一直没有碰到过的错误。咋一看还真不明确是怎么一回事呢。以下是错误的具体描写叙述与解决方式。
1、故障描写叙述
#在启动监听器时收到了TNS-01201错误,监听器无法找到可运行文件
oracle@DevDB02:~> lsnrctl start LISTENER_USBO2
LSNRCTL for Linux: Version 10.2.0.3.0 - Production on 06-JUN-2014 17:06:37
Copyright (c) 1991, 2006, Oracle. All rights reserved.
Starting /home/oracle/OraHome10g/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 10.2.0.3.0 - Production
System parameter file is /home/oracle/OraHome10g/network/admin/listener.ora
Log messages written to /home/oracle/OraHome10g/network/log/listener_usbo2.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.202)(PORT=1403)))
TNS-01201: Listener cannot find executable /users/oracle/OraHome10g/bin/oracle for SID USBO2
Listener failed to start. See the error message(s) above...
2、故障分析
#Meatlink上给出了关于这个问题的描写叙述(Doc ID 22060.1)
#须要检查ORACLE_HOME环境变量是否指向了一个有效位置
Error: TNS 1201
Text: Listener cannot find executable %s for SID %s
-------------------------------------------------------------------------------
Cause: The executable for the Oracle dedicated server process cannot be
found.
Action: Check the appropriate SID_DESC in LISTENER.ORA to make sure that
the ORACLE_HOME component is pointing to a valid location.
If this component is not set, then check the value of the ORACLE_HOME
environment variable.
Comment:This error is reported only on UNIX platforms.
3、故障解决
#原来监听器中配置的oracle_home不同于当前的ORACLE_HOME
oracle@DevDB02:~> more $ORACLE_HOME/network/admin/listener.ora
LISTENER_USBO2 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.202)(PORT = 1403))
)
)
)
SID_LIST_LISTENER_USBO2 =
(SID_LIST =
(SID_DESC =
(sid_name=USBO2)
(oracle_home = /users/oracle/OraHome10g)
)
)
oracle@DevDB02:~> echo $ORACLE_HOME
/home/oracle/OraHome10g
#因为直接从另外一台机器复制了listener配置内容。新机器与旧机器使用了不同的ORACLE_HOME
#于是收到了上面的错误提示,以下是更正后的内容,再次重新启动正常
oracle@DevDB02:~> grep home $ORACLE_HOME/network/admin/listener.ora
(oracle_home = /home/oracle/OraHome10g)
相关參考
RMAN 配置保留策略
Oracle 闪回区(Oracle Flash recovery area)
Oracle 快照控制文件(snapshot control file)
基于RMAN的异机数据库克隆(rman duplicate)
基于RMAN从活动数据库异机克隆(rman duplicate from active DB)
RMAN duplicate from active 时遭遇 ORA-17627 ORA-12154
Oracle 基于备份控制文件的恢复(unsing backup controlfile)