一:当时的情景

SQL> shutdown immediate

--无任何返回结果

二:问题定位过程

1.查询相关进程只有ORACLE的关键进程存在

ps -ef |grep ora_

soadb  4487     1  0 22:57:05 ?         0:00 ora_reco_soadbprd    soadb  4485     1  5 22:57:05 ?         0:00 ora_smon_soadbprd    soadb  4526     1  0 22:57:15 ?         0:00 ora_arc0_soadbprd    soadb  4479     1  0 22:57:04 ?         0:00 ora_dbw1_soadbprd    soadb  4483     1  0 22:57:04 ?         0:01 ora_ckpt_soadbprd    soadb  4468     1  0 22:57:02 ?         0:02 ora_pmon_soadbprd

2.查看alter日志,显示如下:

Shutting down instance: further logons disabled     Thu Nov 14 22:04:24 2013     Stopping background process CJQ0     Thu Nov 14 22:04:24 2013     Stopping background process QMNC     Thu Nov 14 22:04:26 2013     Stopping background process MMNL     Thu Nov 14 22:04:27 2013     Stopping background process MMON     Thu Nov 14 22:04:27 2013     Shutting down instance (immediate)     License high water mark = 152     Thu Nov 14 22:04:27 2013     Stopping Job queue slave processes, flags = 7     Thu Nov 14 22:04:27 2013     Job queue slave processes stopped     Waiting for dispatcher 'D000' to shutdown     All dispatchers and shared servers shutdown     Thu Nov 14 22:04:30 2013     ALTER DATABASE CLOSE NORMAL     Thu Nov 14 22:09:34 2013    Waiting for smon to disable tx recovery.     Thu Nov 14 22:23:46 2013     MMNL absent for 1201 secs; Foregrounds taking over

3.针对红色字体的提示,查询官方网站,ID 1076161.6

官方描述如下:

During shutdown the SMON process is cleaning up extents and updating the data dictionary tables with the marked free extents. As the extents are marked as freed, they are removed from the table for used extents, UET$ and placed on the table for free extents, FET$.

官方描述的原因是因为smon进程在清时临时表空间数据块和更新数据字典时造成的数据库HANG住,原理讲的很清楚,里面还有一个链接,一个是讲述这种情况可能是一个BUG,另一个链接教我们诊断数据库HANG住的具体原因。但现在的问题是,如果一直等下去,可能需要几个小时,此次变更数据库重启只有半小时时间,不可能待下去,怎么办?

4.尝试取消shutdown immediate命令

CTRAL + C没有任何作用,新建一个链接执行查询或其它操作,会报一个错,具体信息如下:

ORA-01089: immediate shutdown in progress - no operations are permitted

可以看到,此时什么都不允许操作,这时想找从操作系统上找到shutdown immediate进程KILL掉,后来仔细一想,这个操作可能比shutdown abort更危险,很可能造成数据库无法启动,在网上找到了相关资源,也没找到办法,此时突然想到刚学ORACLE数据库启动和停止时有一条命令是

startup force:中止当前数据库的运行,并开始重新正常的启动数据库

startup force = shutdown abort +startup 此时也只能用它了

5.强制停止shutdown immediate

新打开一个sqlplus / as sysdba

SQL> startup force       ORACLE instance started.

Total System Global Area 3206836224 bytes        Fixed Size                  2180024 bytes        Variable Size            1778388040 bytes        Database Buffers         1409286144 bytes        Redo Buffers               16982016 bytes        Database mounted.        Database opened.

此时shutdown immediate窗口停止了,数据库恢复到可操作状态,此时我再次用shutdown immediate命令再次正常停止数据库,依然无法停止,没办法,再次执行startup force获取数据库控制权,选择shutdown abort方法停止数据库。重新启动,很幸运,启动成功了!(

ORA-01089: 即時シャットダウン処理中 - 操作はできません的更多相关文章

  1. (ASP页面查询等待提示效果)GridViewなどで検索中に「処理中メッセージ」を表示する方法(※他の長い時間処理も参照できる)

    原博客 http://ino1970.blog119.fc2.com/blog-entry-163.html GridViewなどで検索中に「処理中メッセージ」を表示する方法 「GridViewなどで ...

  2. ORA错误查询手册

    ORA-00910: 指定した長さがデータ型に対して長すぎます 原因: データ型CHARまたはRAWに対して指定した長さは.2000を超える値または4000を超える値であるため無効です. 処置: 指定 ...

  3. 请列出你在从事IT生涯中,最难以忘怀的一次误操作

    IT系统最怕什么,我觉得就两点: 1.不可靠的软硬件. 2.误操作. 第一点就不用解释了,第二点是该文的内容,主要摘选自ITPUB的精华贴——[精华] 请列出你在从事DBA生涯中,最难以忘怀的一次误操 ...

  4. JSFのAjaxタグのoneventでbegin/complete/successを使う

    PrimeFacesに慣れてしまって.通常のHTMLタグでの記述方法がわからなかったりする点があった…ので.メモ. Ajaxでリクエスト送信のタイミングやレスポンスが戻るタイミングに何らか(JavaS ...

  5. LOOP AT SCREEN

    用法 主に.画面の属性を変更させるために使用する. 照会モードでは入力不可とするが入力可能モードでは入力可能とする.ラジオボタンAが選択された場合はラジオボタンBに関連する項目は非表示とするなど.   ...

  6. LEAVE TO LIST-PROCESSING

    LEAVE SCREEN 現在の画面の処理を中止し.次の画面を呼び出す - LEAVE TO SCREEN 現在の画面の処理を中止し.動的に定義された次の画面を呼び出す - LEAVE [PROGRA ...

  7. 细聊Oracle通过ODBC数据源连接SQL Server数据库

    类似文章搜索引擎上有很多,内容大致相同,今天所谓细聊是因为我在借鉴这些文章时候走了些弯路,所以写此文,为自己备忘,同时如果能为初涉此处知识点的小伙伴提供些帮助就更好了,文章结尾处的一些扩展有一定实战意 ...

  8. Oracle通过ODBC链接SqlServer数据库

    原网址:https://www.cnblogs.com/jijm123/p/11598515.html 第一步.创建ODBC数据源 这一步要考虑数据源是32位还是64位的问题,其实就是选择不同的exe ...

  9. 4-pl-sql的安装

    pl-sql的安装 一.安装pl-sql 1.安装前准备 1).在windows安装的oracle client目录下创建相应目录 2).上传oracle数据库的文件到admin目录下 3).然后打开 ...

随机推荐

  1. img标签下多余空白BUG解决方法

    在进行页面的DIV CSS排版时,遇到IE6(当然有时Firefox下也会偶遇)浏览器中的图片元素img下出现多余空白的问题绝对是常见的 对于该问题的解决方法也是“见机行事”. 1.将图片转换为块级对 ...

  2. 常见任务&基本工具 1 软件包管理

    打包系统主要有两个阵营 包文件的简介 Package files are created by a person known as a package maintainer, often (but n ...

  3. python实例 字符串

    比起C/C++,Python处理字符串的方式实在太让人感动了.把字符串当列表来用吧. #! /usr/bin/python word="abcdefg" a=word[2] pri ...

  4. SQL SERVER 自增列的方法

    declare @Table_name varchar(60) set @Table_name = ''; if Exists(Select top 1 1 from sysobjects       ...

  5. caffe 的docker安装过程及相关linux操作总结

    一.caffe 和 docker的安装编译 docker pull caffe镜像(注意使用docker安装省去安装CUDA和cudnn的安装.) 安装相关依赖包 安装opencv3(使用源码安装) ...

  6. 安装 cx_Oracle

    1.下载 oracle client instant  和  sdk,  全部解压到 /opt/instantclient_11_2/ http://www.oracle.com/technetwor ...

  7. JavaScript异步

    JavaScript异步类型 延迟类型:setTimeout.setInterval.setImmediate 监听事件:监听new Image加载状态.监听script加载状态.监听iframe加载 ...

  8. JS中浏览器兼容问题

    body的子节点IE 火狐 显示3个  其他显示7个 float浮动中的兼容 link 操作外联的兼容

  9. Polyfill简介

    1.什么是Polyfill? Polyfill是一个js库,主要抚平不同浏览器之间对js实现的差异.比如,html5的storage(session,local), 不同浏览器,不同版本,有些支持,有 ...

  10. linux下的OpenCV安装&学习笔记

    http://www.linuxdiyf.com/viewarticle.php?id=20731 (本想在fedora下安装编译的,但目前opencv官网.sourceforge等网站都无法访问下载 ...