ITPub博客

首页 > 数据库 > Oracle > ora-00020 超出最大进程数

ora-00020 超出最大进程数

原创 Oracle 作者:tangxiaodong 时间:2015-03-13 16:42:12 0 删除 编辑

1.问题描述

     Windows Sever 2008 64位,Oracle 11g 11.2.0.4.0,通过RMAN还原之后,Oracle数据库启动之后,几小时之后,没有做什么事情,再次连接,发现ORA错误,错误如下:“ora-00020:maiximun number of process(150)  exceeded.”

2.ora-00020解释

    1)含义:超出最大进程数(150)。

    2)原因:资源打开之后,没有及时的关闭;另一种说法:资源打开之后不正常的关闭界面造成数据库中的进程处于‘不活动(inactive)’状态。

3.尝试方法

    查阅网上资料,方法有以下几类:

   1)修改oracle最大进程数目:
     以sysdba的身份登陆SQL*PLUS,执行alter system set process=数值 scope=spfile;   创建pfile:create pfile  from spfile;   重启oracle服务(shutdown immediate,startup)。

      通过这种方法更改最大进程为500之后,重启数据库,没有程序连接数据库,第二天一早来,发现数据库又连接不上了,还是报这样的错误。再次查阅网上资料,发现有网友提出是Window的BUG问题,就如2)所述。

   2)关于DBControl服务

      SQL语句:select sid,serial#,username,program,machine,status from v$session  where status='incative',发现username为sysman用户下,program为OMS的程序,有大量的OMS处于‘非活动’状态; 
     SQL语句:
select count(*) from v$session;select count(*) from v$process;通过这两句查找当前会话数的进程数,发现这两项值在不断的变大。

      关闭DBControl服务,发现当前进程数和会话数变小了,没有原来的大,而且OMS程序为’inactive’状态的记录没有。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8043290/viewspace-1458674/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-07-18

  • 博文量
    11
  • 访问量
    98996