日期:2014-05-16  浏览次数:20343 次

Oracle数据库案例整理-登录Oracle数据库失败-数据库异常关闭导致登录数据库失败

1.1       现象描述

数据库异常关闭后,无法登录数据库。检查并关闭所有Oracle进程,然后再次登录数据库。登录失败,系统显示如下错误信息:

% sqlplus / as sysdba

SQL*Plus: Release 11.1.0.7.0 - Production on Mon Dec 28 06:24:55 2009
 
Copyright (c) 1982, 2008, Oracle.  All rights reserved.
 
ERROR:
ORA-00020: maximum number of processes (%s) exceeded

1.2       可能原因

关闭所有Oracle进程,但是Oracle资源没有释放完全,导致登录数据库失败。

1.3       定位思路

检查是否存在没有释放的Oracle消息队列。

% ipcs

系统提示如下信息:

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status
0x60c1edf0 229376     oracle    660        4096       0
0x54fe0010 262145     scu       666        905897     6
0x46fe0010 294914     scu       666        276        2
0x53fe0010 327683     scu       664        17300480   3
0x45fe0010 360452     scu       666        16400      2
0x56fe0010 425990     scu       666        808        2
0x49fe0010 589835     scu       666        5124       2
 
------ Semaphore Arrays --------
key        semid      owner      perms      nsems
0x002fa327 0          root      666        2
0x3fdf6c2c 294913     oracle    660        304
0x32fe0010 360451     scu       666        512
&nbs