TNS-01201: Listener cannot find executablen 错误-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

TNS-01201: Listener cannot find executablen 错误

简介:     最近在启动监听器的时候收到了TNS-01201: Listener cannot find executable...的错误提示。这个错误还真是一个一直没有碰到过的错误。

    最近在启动监听器的时候收到了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)
         


Oracle 牛鹏社    

相关参考
    RMAN 配置保留策略    

    Oracle 闪回区(Oracle Flash recovery area)

    Oracle 快照控制文件(snapshot control file)

    中小型数据库 RMAN CATALOG 备份恢复方案(一)

    中小型数据库 RMAN CATALOG 备份恢复方案(二)

    中小型数据库 RMAN CATALOG 备份恢复方案(三)

    基于RMAN实现坏块介质恢复(blockrecover)

    用 DBMS_REPAIR 修复坏块

    RMAN 数据库克隆文件位置转换方法

    基于RMAN的异机数据库克隆(rman duplicate)

    基于 RMAN 的同机数据库克隆

    基于用户管理的同机数据库克隆

    基于RMAN从活动数据库异机克隆(rman duplicate from active DB)

    RMAN duplicate from active 时遭遇 ORA-17627 ORA-12154

    Oracle 冷备份

    Oracle 热备份

    Oracle 备份恢复概念

    Oracle 实例恢复

    Oracle 基于用户管理恢复的处理

    SYSTEM 表空间管理及备份恢复

    SYSAUX表空间管理及恢复

    Oracle 基于备份控制文件的恢复(unsing backup controlfile)

    RMAN 概述及其体系结构

    RMAN 配置、监控与管理

    RMAN 备份详解

    RMAN 还原与恢复

    RMAN catalog 的创建和使用

    基于catalog 创建RMAN存储脚本

    基于catalog 的RMAN 备份与恢复

    RMAN 备份路径困惑

    自定义 RMAN 显示的日期时间格式

    只读表空间的备份与恢复

    Oracle 基于用户管理的不完全恢复

    理解 using backup controlfile

    使用RMAN实现异机备份恢复(WIN平台)

    使用RMAN迁移文件系统数据库到ASM

    基于Linux下 Oracle 备份策略(RMAN)

    Linux 下RMAN备份shell脚本

    使用RMAN迁移数据库到异机

    RMAN 提示符下执行SQL语句

    Oracle 基于 RMAN 的不完全恢复(incomplete recovery by RMAN)

    rman 还原归档日志(restore archivelog)

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章
最新文章
相关文章