SQL> shut immediate
ORA-24324: service handle not initialized
ORA-24323: value not allowed
ORA-27140: attach to post/wait facility failed
ORA-27300: OS system dependent operation:invalid_egid failed with status: 1
ORA-27301: OS failure message: Operation not permitted
ORA-27302: failure occurred at: skgpwinit6
ORA-27303: additional information: startup egid = 501 (oinstall), current egid = 504 (asmadmin)

---最直接的解决办法

shutdown abort

后面退出会话,然后登陆sqlplus,使用shutdown abort 才将数据库关闭。处理完成后,查了一下metal link官方文档,发现引起错误的原因为:

Background processes are hanging/not started correctly during the previous startup of this database.

Hence the semaphores and shared memory segments are not getting detached properly now during shutdown.

以后遇到这个问题,可以使用下面步骤处理:

1. Verify that there are no background processes owned by "oracle" , if there are kill them

$ ps -ef | grep ora_ | grep $ORACLE_SID

2. Remove shared memory and semaphores:

A) Check for shared memory and semaphores

$ ipcs -mt (if there is anything owned by oracle remove it)

$ ipcrm -m [ID] (to remove it)

B) Check and remove semaphores

$ ipcs -sbt (if there is anything owned by oracle remove it)

$ ipcrm -s [ID] (to remove it)

C) Remove sga and lk file

$ cd $ORACLE_HOME/dbs

$ rm sgadef<SID>.dbf (removing sga file)

$ORACLE_HOME/dbs/lk<sid> (removing lk... flies)

D) If database is down, try to bring up oracle one step at a time:

$ sqlplus /nolog

SQL> startup nomount pfile = ...[path]

SQL> alter database mount;

SQL> alter database open;\

Otherwise, exit current SQL*Plus session and verify the following environment variables are set.

echo $ORACLE_HOME

echo $ORACLE_SID (echo %ORACLE_SID% on Windows)

Then, Execute the following:

sqlplus / as sysdba

shutdown abort

exit

sqlplus / as sysdba

startup

如上官方资料所示, 两种解决方案。关于第一种方案,简单梳理如下:

1: 清理后台进程,一般找到相关进程后,使用kill命令杀掉。

2: 清理共享内存段

3: 清理信号集

注意,在RHEL 中, ipcs -sbt命令会报错"ipcs: invalid option -- b",这个是因为Linux上的ipcs命令,不支持UNIX上的-b,所以不能照本宣科,不要使用参数b. 具体参考官方文档ipcs man page describes invalid -b option in RHEL 5

4: 删除 sga and lk文件。

ipcs相关资料:

ipcs 命令往标准输出写入一些关于活动进程间通信设施的信息。如果没有指定任何标志,ipcs 命令用简短格式写入一些关于当前活动消息队列、共享内存段、信号量、远程队列和本地队列标题。

参考资料:

ORA-24324 During Startup or Shutdown (文档 ID 794293.1)

ORA-1089 During Shutdown Immediate (文档 ID 1014091.102)

shut immediate 数据库遭遇 ORA-24324 ORA-24323的更多相关文章

  1. listener.ora/sqlnet.ora/tnsnames.ora配置文件详解

    oracle网络配置 三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下. 英文说明: The ...

  2. oracle的listener.ora sqlnet.ora tnsnames.ora三个文件的关联性

    学习:http://www.cnblogs.com/william-lee/archive/2010/10/20/1856261.html 之前因为安装的是windows server 2008 r2 ...

  3. ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora)

    不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册.与单实例相同,RAC非缺省端口的监听器也是通过设置参数 ...

  4. oracle的sqlnet.ora,tnsnames.ora,listener.ora三个配置文件

    总结: 1 .三个配置文件都是放在$ORACLE_HOME\network\admin目录下. 2 .sqlnet.ora确定解析方式 3 .listener.ora上设SID_NAME,通常用于JD ...

  5. oracle的sqlnet.ora , tnsnames.ora , Listener.ora 文件的作用(转)

    oracle网络配置三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下.1. sqlnet.o ...

  6. oracle错误(ORA:12154 ORA:01034 和 ORA:27101 ORA-18008 ORA-01081)

    按照正常操作流程,启动项目,发现项目报错,原因是连接不上oracle数据库, PLSQL连接时报错,错误码  ORA:12154 无法解析指定的连接标识符 第一次,遇到这个错误,在网上找了资料都是需要 ...

  7. ORACLE RAC 监听配置 (listener.ora tnsnames.ora)

    Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的.在Oracle中 tns进程用于为指定网络地址上的一个或多个Oracle 实例提供服务注册,并响应来自客户端对该服务 ...

  8. PLSQL登录数据库 报ORA -12154的诡异问题

    https://q.cnblogs.com/q/89420/ 现象: 1.机器上先后安装了oracle两个版本的client.在装第一个client后,plsql可以顺利连接数据库a并登录. 2.安装 ...

  9. tnsnames.ora配置注意(连接新的数据库)

    文件地址D:\app\think\product\11.2.0\instantclient_11_2\network\admin\tnsnames.ora# tnsnames.ora Network ...

随机推荐

  1. K8S dashboard

    kubernetes-dashboard有两种认证方式,一个token认证,另一个是Kubeconfig文件的认证.这个时候的认证不是UserAccount而是获取kubernetes集群资源信息的s ...

  2. css 表单标签两端对齐

    来自:http://demo.doyoe.com/css3/justify/justify-form.htm  侵删 <!DOCTYPE html> <html lang=" ...

  3. js 从一个对象中找到属性值相等的集合

    getobjs: function(objs, key, value) { var result = []; for (var i in objs) { var obj = $(objs[i]); i ...

  4. CSS3动画:流彩文字效果+图片模糊效果+边框伸展效果实现

    前言 首先第一步,先布局html代码如下: <div class="wrap"> <img src="images/1.jpg" class= ...

  5. Android为TV端助力 Intent匹配action,category和data原则

    1.当你在androidmanifest里面定义了一个或多个action时 你使用隐式意图其他activity或者service时,规定你隐式里面的action必须匹配XML中定义的action,可以 ...

  6. js实现获取当前时间是本月第几周和年的第几周的方法

    js实现获取当前时间是本月第几周和年的第几周的方法 获取本月第几周的方法: var getMonthWeek = function (a, b, c) { /** * a = d = 当前日期 * b ...

  7. RTP 流媒体

    RTMP协议是Adobe的私有协议,未完全公开,RTSP协议和HTTP协议是共有协议,并有专门机构做维护. RTMP协议一般传输的是flv,f4v格式流,RTSP协议一般传输的是ts,mp4格式的流. ...

  8. pyHook和pythoncom的安装

    pyHook包为Windows中的全局鼠标和键盘事件提供回调.Python应用程序为用户输入事件注册事件处理程序,例如鼠标左键,鼠标左键,按键等,并设置键盘和/或鼠标挂钩.底层C库报告的信息包括事件的 ...

  9. django安装与使用

    django安装与使用 --更新中 安装 我这里采用pip安装 pip install django 创建django工程 创建好的工程,会在当前目录.下 django-admin startproj ...

  10. [Hive_5] Hive 的 JDBC 编程

    0. 说明 Hive 的 JDBC 编程 1. hiveserver2 介绍 hiveserver2 是 Hive 的 JDBC 接口,用户可以连接此端口来连接 Hive 服务器 JDBC 驱动类为 ...