?
Solved

Question about Oracle Database "ORA-00020: maximum number of process 1000 exceeded"

Posted on 2015-02-03
5
Medium Priority
?
426 Views
Last Modified: 2015-02-03
Hi Experts, Today we received a Alert from our Oracle Database by saying "maximum number of process 1000 exceeded". Once I checked Oracle Alert log I noticed below error was there.

"ORA-00020: maximum number of process 1000 exceeded"

(1). May I know the possible all reasons for this error ?
(2). And we are using Weblogic as midleware. How do i think about this ORA-00020 error with Weblogic level ?

Thank You
0
Comment
Question by:Pradeep Siriwardana
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
5 Comments
 
LVL 8

Expert Comment

by:Naitik Gamit
ID: 40585792
The ORA-00020 is a serious production error because a user cannot connect.
 
The ORA-00020 is caused by two things:  

1->Disconnected processes:  Rogue “zombie” connections  to Oracle that are idle (not working).  To fix this, use the ALTER SYSTEM KILL command.  You may also need to kill session at the OS level with the KILL -9 or the ORAKILL command.  

2->Too few process buckets:  Oracle limits the number of connected processes with the processes parameter, and you may get the ORA-00020 error as the natural result in growth of system usage.

To fix this, increase the processes parameter, usually doubling the value to allow for future growth.  




The OERR command shows these details for the ORA-00020 error:

ORA-00020: maximum number of processes (string) exceeded

Cause: All process state objects are in use.  

Action: Increase the value of the PROCESSES initialization parameter

Simply increase your processes parameter and you are all set!  
0
 

Author Comment

by:Pradeep Siriwardana
ID: 40585912
Hello Naitik Gamit,

Thank You very much for your clear answer.
I need to get little bit more understanding about 1st reason.

In there, you have mentioned that
1st Point : "ALTER SYSTEM KILL command" can be used kill the idle (zombie) processes.
2nd Point : And later you have mentioned after that "we may need to kill sessions at OS level as well"

My Questions are,
(1). Does it mean,  we need to kill those processes from both level DB & OS  & is it  Compulsory ?
(2). Once server is shared for multiple databases, How do we identify the idle processes which related to the issue in OS Level ?

Thank You in advance,
Pradeep.
0
 
LVL 8

Accepted Solution

by:
Naitik Gamit earned 1500 total points
ID: 40585939
Yes it is compulsory at both level DB & OS.please refer this links for more details

http://www.dba-oracle.com/t_ault_25_dbms_sql_alter.htm

http://www.dba-oracle.com/concepts/killing_side.htm
0
 
LVL 77

Expert Comment

by:slightwv (䄆 Netminder)
ID: 40586112
Killing sessions can be dangerous and should only be done as a last resort.

Exceeding 1000 processes can just be normal for your system.  I would start by increasing the processes parameter to more that what is expected by the applications using the database.
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article started out as an Experts-Exchange question, which then grew into a quick tip to go along with an IOUG presentation for the Collaborate confernce and then later grew again into a full blown article with expanded functionality and legacy…
Have you ever had to make fundamental changes to a table in Oracle, but haven't been able to get any downtime?  I'm talking things like: * Dropping columns * Shrinking allocated space * Removing chained blocks and restoring the PCTFREE * Re-or…
This video shows how to copy a database user from one database to another user DBMS_METADATA.  It also shows how to copy a user's permissions and discusses password hash differences between Oracle 10g and 11g.
Via a live example, show how to take different types of Oracle backups using RMAN.

719 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question