有时候在关闭数据库时,发出shutdown immediate;命令后一直未关闭。查看ALERT日志。在等待一段时间后日志中有提示:

SHUTDOWN: waiting for active calls to complete.

原因是有些进程无法被PMON进程清理。导致SHUTDOWN时无法关闭而HANG住。

==》依据观察,在ORACLE10G及以上版本号。会是例如以下提示:(2015/11/24最新验证ORACLE9206中也会提示进程号)

Active call for process 12345 user 'oracle' program 'oracle@abcd'

SHUTDOWN: waiting for active calls to complete.

也就是指出哪个进程引起的等待。此时kill -9 12345 进程就可以。

==》可是在ORACLE 8I版本号中,是不会提示哪个进程ACTIVE引起关闭进程HANG的。提演示样例如以下:

Sun Jul 26 21:42:38 2015

ARC0: Beginning to archive log# 6 seq# 393635

ARC0: Completed archiving log# 6 seq# 393635

Sun Jul 26 21:42:54 2015

Shutting down instance (immediate)

License high water mark = 235

Sun Jul 26 21:48:02 2015

SHUTDOWN: waiting for active calls to complete.

这样的情况下。仅仅好查找 ps -ef|grep LOCAL=NO 相关进程都kill掉等处理思路。

==》假设是WINDOWS平台,没有进程能够来KILL,最好方法就是停止ORACLE数据库的服务了。

这方面资料能够參考MOS的文档:

Alert Log: Shutdown Waiting for Active Calls to Complete (文档 ID 1039389.6)

怎样以最快方式干净的关闭数据库? (文档 ID 1577321.1)







    近期遇到一次ORACLE 8.1.7.4.0数据库的关闭操作时,在关闭前。依照正常关闭数据库流程进行检查和处理:

关闭监听,查看有无ps -ef|grep ora_j,查看是否有事务在执行、是否有大事务须要在又一次启动时进程回滚、多次切换归档、多次执行CHECKPOINT完毕后再关库。

在以上检查中,LOCAL=NO的会话均进行了处理,也确认了无事务执行;

可是在SHUTDOWN IMMEDIATE命令运行时。仍然HANG住并报SHUTDOWN: waiting for active calls to complete.。

等待多时后,进行查看仅仅有例如以下进程,尝试kill arc0进程。PMON进程终止实例(相当于SHUTDOWN ABORT),万幸是关机之前确认事务完毕、切换REDO/检查点 等操作均有进行,STARTUP时一切正常。

==》这样的情况下,建议在SHUTDOWN IMMEDIATE前多次切换LOGFILE,并执行检查点,同一时候确保应用已经关闭;此时无事务执行同一时候数据已经写入磁盘。假设无奈之下仅仅能SHUTDOWN ABORT或者是其他KILL进程导致SHUTDOWN ABORT,也非常少会造成数据损坏(如数据文件、REDO LOG损坏)导致的实例启动异常。

日志例如以下:

Sun Jul 11 21:50:57 2015

Errors in file /oracle/8.1.7/admin/AAA/bdump/pmon_26680_aaa.trc:

ORA-00473: ARCH process terminated with error

Sun Jul 11 21:50:57 2015

PMON: terminating instance due to error 473

Instance terminated by PMON, pid = 26680

进程例如以下

  oracle  17016      1   0   Feb 11      - 60:13 ora_arc0_aaa

  oracle  18346      1   0   Feb 11      - 1568:00 ora_lgwr_aaa

  oracle  18858      1   0   Feb 11      -  0:02 ora_reco_aaa

  oracle  22528      1   0   Feb 11      - 122:02 ora_dbw0_aaa

  oracle  26680      1   0   Feb 11      - 55:24 ora_pmon_aaa

  oracle  28856      1   0   Feb 11      -  6:02 ora_smon_aaa

  oracle  29776      1   0   Feb 11      - 67:07 ora_ckpt_aaa

  oracle  80566  67462   0 21:50:44  pts/0  0:00 grep ora_

  oracle 110824      1   0   May 28      - 18:18 ora_arc1_aaa

关闭数据库时SHUTDOWN: waiting for active calls to complete.处理的更多相关文章

  1. SHUTDOWN: waiting for active calls to complete

    Problem Description: ====================  You are attempting to shut down the database and the data ...

  2. shutdown immediate 持久无法关闭数据库之解决方案

    问题引出:测试环境,进行oralce的shutdown immediate,等待时间很长,长的无法等待 ORACLE shutdown 过程: 1.shutdown normal(正常关闭方式):阻止 ...

  3. Oracle shutdown immediate无法关闭数据库解决方法

    在测试服务器上使用shutdown immediate命令关闭数据库时,长时间无法关闭数据库,如下所示 1: [oracle@DB-Server admin]$ sqlplus / as sysdba ...

  4. Oracle11g 启动数据库实例、关闭数据库实例

    Oracle11g 启动数据库实例        startup 1: nomount 模式:      描述:             该模式只会创建实例(即:创建oracle 实例的各种内存结构和 ...

  5. Oracle 关闭数据库(未使用Oracle Restart)

    Oracle关闭数据库(未使用Oracle Restart) by:授客 QQ:1033553122 SHUTDOWN [选项] 选项说明: NORMAL-语句执行后,不允许创建新的连接:等待所有当前 ...

  6. Oracle启动与关闭数据库实例

    Oracle数据库启动实例分为3个步骤: 启动实例 加载数据库 打开数据库 通用模式: STARTUP  [ nomount | mount | open | force ]  [resetrict] ...

  7. Connection连接、关闭数据库

    创建连接sql server数据库的字符一般有两种, 一种是以sql验证登录的 一种是以windows身份验证的 步骤: 引用命名空间System.Date.SqlClient 将连接方法声明至字符串 ...

  8. Linux CentOS中使用SQL*Plus启动和关闭数据库

    启动和关闭数据库的常用工具有三个 一.SQL*Plus 在SQL*Plus环境中,用户以SYSDBA身份连接到Oracle后,可以通过命令行方式启动或关闭数据库. 二.OEM(企业管理器) 利用OEM ...

  9. 未完全关闭数据库导致ORA-01012: not logged的解决

    首先使用SHUTDOWN 没加任何参数方式关闭数据库,在数据库未关闭时CTRL+Z停止执行,退出用SQLPLUS重登陆,出现报错:ORA-01012: not logged on SQL> st ...

随机推荐

  1. cmd不是内部命令解决方法

    当进入cmd之后,经常会出现这样的提示“不是内部命令”等,给一些习惯使用cmd排查故障的IT管理员带来了困扰,现将解决方法介绍一下,希望能帮助你. 1.看看你机子里的 c:\windows\syste ...

  2. 多重采样(MultiSample)下的FBO反锯齿 【转】

    在三维渲染的过程中,锯齿总是让人讨厌的东西.抗锯齿的一种采用方式是多重采样,本文主要小记一下FBO与多重采样的关系.——ZwqXin.com 首先,关于FBO(Frame Buffer Object) ...

  3. mipmap of unity

    遇到个奇怪的事情 mipmap generation 0级不压缩 1级 4个合1个 在unity里面 明显开了 mipmapgenerate之后 level0变糊了 ================ ...

  4. [Javascript] Write a Generator Function to Generate the Alphabet / Numbers

    When you need to generate a data set, a generator function is often the correct solution. A generato ...

  5. HTML5 Canvas 绘制库存变化折线

    <!DOCTYPE html> <html lang="utf-8"> <meta http-equiv="Content-Type&quo ...

  6. Request.Cookies使用方法分析

    本文章介绍了Request.Cookies的基本的语法和使用方法. 而且通过演示样例分析了Request.Cookies的使用过程. Request.Cookies方法能够检索Cookies 集合中的 ...

  7. null和undefined相等比较

    在==(相等)判断中,null和undefined相等(它们也与自身相等),除此之外不与其他值相等. 示例代码: <!DOCTYPE html> <html lang="z ...

  8. [linux]w命令和uptime命令查看系统负载

    在Linux系统中查询系统CPU和内存的负载(使用率)时,我们通常习惯于使用top.atop或者ps,这篇文章将要给大家介绍如何使用w命令和uptime命令来查看系统的负载情况,对于uptime命令, ...

  9. 转:VLC搭建RTSP直播流,图文介绍

    将一个视频转成rtsp流,通过vlc播放器,搭建一个rtsp服务器,让rtsp客户端去访问这个视频的rtsp流 1 需要有vlc播放器,我的版本如下 2  媒体 -->  流 3  添加视频文件 ...

  10. git 命令使用速查手册( 个人版)

    1. 克隆远程库 git clone   repository_address 通过 git clone 获取的git库只是远程库中的当前工作分支,如果想获取其它分支信息,可参考下面. 2. 查看远程 ...