【原创】ORA-27123及ORA-01034的解决方法

在linux操作系统上的oracle用户下装有oracle数据库,启动登陆正常。

[ggs@vm ~]$ id oracle

uid=500(oracle) gid=501(oinstall) groups=501(oinstall),500(dba) 

现在本机上新建一个操作系统用户ggs,跟oracle用户属同一个组

[ggs@vm ~]$ id ggs

 uid=501(ggs) gid=501(oinstall) groups=501(oinstall),500(dba)

在ggs用户下登陆和启动数据库报错

 [ggs@vm ~]$ sqlplus /nolog

SQL*Plus: Release 11.1.0.6.0 - Production on Wed Oct 31 10:23:33 2012
Copyright (c) 1982, 2007, Oracle.  All rights reserved.
SQL> conn /as sysdba
Connected to an idle instance.
SQL> select * from v$database;
select * from v$database
*
ERROR at line 1:
ORA-01034: ORACLE not available
Process ID: 0
Session ID: 0 Serial number: 0
SQL> startup
ORA-27123: unable to attach to shared memory segment
Linux Error: 13: Permission denied
Additional information: 4816901
Additional information: 10

 

检查ORACLE_SID,ORACLE_HOME,LD_LIBRARY_PATH等环境变量都是正确的。都和oracle用户一样。
为什么只有oracle用户可以,其他用户不能

 

解决方法:

[root@vm ~]# su - oracle
[oracle@vm ~]$ cd $ORACLE_HOME/bin
[oracle@vm bin]$ chmod +s oracle
[oracle@vm bin]$ ll oracle
-rwsrwsr-x 1 oracle oinstall 152028761 Aug 30 19:06 oracle
[oracle@vm bin]$

关于s权限的说明:

 s表示setUID 和setGID 。位于user和group权限组的第三位置。如果在user权限组中设置了s权限。那么当该文件被执行时,是以文件所有者的GID,而不是用户的GID执行文件,因此可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用全部系统资源

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值