zoukankan      html  css  js  c++  java
  • 【原创】ORA27123及ORA01034的解决方法

    在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执行文件,因此可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用全部系统资源

  • 相关阅读:
    Win8 iis 环境搭建
    Windows phone 8 触发器使用小结
    Windows Phone 页面之间参数传递方法
    日期SQL 脚本
    net 内存泄露和内存溢出
    Emacs的一些事情(与Vi的争议及使用)
    matlab与示波器连接及电脑连接
    msp430学习笔记-TA
    28个Unix/Linux的命令行神器
    linux在线中文手册
  • 原文地址:https://www.cnblogs.com/jimeper/p/2747634.html
Copyright © 2011-2022 走看看