无法以root用户身份启动Oracle侦听器

时间:2012-05-08 09:29:03

标签: linux oracle oracle10g

我想以root用户身份启动Oracle Listner。我能够以oracle用户身份启动监听器。 但它不是以root用户身份开始的。 我能够以root用户身份停止并检查状态。

当我以root身份启动监听器时,它会给出以下消息: -

# lsnrctl start

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 08-MAY-2012 15:08:11

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Starting /opt/oracle/102/bin/tnslsnr: please wait...

/opt/oracle/102/bin/tnslsnr: error while loading shared libraries: libclntsh.so.10.1: cannot open shared object file: No such file or directory
TNS-12547: TNS:lost contact
 TNS-12560: TNS:protocol adapter error
  TNS-00517: Lost contact
   Linux Error: 32: Broken pipe

请帮我以root用户身份启动监听器。

1 个答案:

答案 0 :(得分:2)

您不应该以root用户身份运行Oracle,这是一个安全风险。没有一个理由以root用户身份运行rdbms和/或监听器,除非你完全搞砸了安装,甚至不允许以root用户身份运行。

如果您确实需要以root用户身份运行侦听器,请确保您的环境变量正确无误。在你的情况下:

   # export ORACLE_HOME=/opt/oracle/102
   # export PATH=$PATH:$ORACLE_HOME/bin

   # cd $ORACLE_HOME/bin
   # chmod u+s lsnrctl
   # lsnrctl start

适用于Linux的LSNRCTL:版本10.2.0.5.0 - 生产于2012年5月9日20:51:07

  

版权所有(c)1991,2010,Oracle。保留所有权利。

     

启动/ data / oracle / base / product / se_10205_s / bin / tnslsnr:请   等待...

     

适用于Linux的TNSLSNR:版本10.2.0.5.0 - 生产系统参数   文件是/data/oracle/base/admin/network/listener.ora日志消息   写给   /data/oracle/base/product/se_10205_s/network/log/listener.log   听取:(DESCRIPTION =(ADDRESS =(PROTOCOL = ipc)(KEY = LISTENER)))

     

连接到(DESCRIPTION =(ADDRESS =(PROTOCOL = IPC)(KEY = LISTENER)))   LISTENER的状态   ------------------------ Alias LISTENER版本TNSLSNR for Linux:版本10.2.0.5.0 - 生产开始日期
  09-MAY-2012 20:51:09正常运行时间0天0小时。 0分钟0   sec Trace Level off安全ON:本地   OS身份验证SNMP OFF侦听器参数   文件/data/oracle/base/admin/network/listener.ora监听器日志文件   /data/oracle/base/product/se_10205_s/network/log/listener.log   听力端点摘要...
  (DESCRIPTION =(ADDRESS =(PROTOCOL = ipc)(KEY = LISTENER)))听众   不支持服务命令成功完成

# lsnrctl stop
  

适用于Linux的LSNRCTL:版本10.2.0.5.0 - 生产于2012年5月9日   20时52分16秒

     

版权所有(c)1991,2010,Oracle。保留所有权利。

     

连接到(DESCRIPTION =(ADDRESS =(PROTOCOL = IPC)(KEY = LISTENER)))   TNS-01190:用户无权执行请求   监听器命令

不要这样做;如果你犯了错误。选择作为dba组成员但不是root用户的任何其他用户。

顺便说一句:在这个小小的演示之后,我不得不解决一个小问题:

  

开始使用pid = 5215收听错误:   (DESCRIPTION =(ADDRESS =(PROTOCOL = IPC)(KEY = LISTENER)))TNS-12555:   TNS:权限被拒绝TNS-12560:TNS:协议适配器错误
  TNS-00525:操作权限不足Linux错误:1:   不允许操作

问题显而易见 - / var /tmp / .oracle / sLISTENER归root所有。给正确的用户一点点照顾。

相关问题