Call now: 252-767-6166  
Oracle Training Oracle Support Development Oracle Apps

 E-mail Us
 Oracle Articles
New Oracle Articles

 Oracle Training
 Oracle Tips

 Oracle Forum
 Class Catalog

 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Oracle Support

 SQL Tuning

 Oracle UNIX
 Oracle Linux
 Remote s
 Remote plans
 Application Server

 Oracle Forms
 Oracle Portal
 App Upgrades
 SQL Server
 Oracle Concepts
 Software Support

 Remote S


 Consulting Staff
 Consulting Prices
 Help Wanted!


 Oracle Posters
 Oracle Books

 Oracle Scripts

Don Burleson Blog 







ORA-00445 background process PMON did not start tips

Oracle Database Tips by Donald BurlesonFebruary 11, 2015

Question:  At the startup command, we are facing ORA-00445 error PMON does not start even after 120 sec at the time of instance starting up.  How do I resolve the ORA-00445 error and restart PMON.

Answer:  The docs note that the ORA-00445 error happens when a background process cannot start running:

ORA-00445: background process "string" did not start after string seconds

Cause: The specified process did not start after the specified time.

Action: Ensure that the background did not die and leave a trace file.

You start troubleshooting an ORA-00445 error by examining your alert log and check for trace files in the bdump (background_dump_dest) directory.

I have seen the ORA-00445 because the OS is still holding the SGA RAM after a previous crash.

First, run an "ipcs –pmb" command and see if you have leftover RAM segments from the last instance.  If you find held RAM, run the ipcrm command to remove the segments.  Here is how to check for held SGA RAM on the OS.

If PMON fails on startup, it's almost always because of one of these conditions:

  1. Leftover memory segments from a previous instance crash.

  2. Incorrect environment parameter settings in SQL*Plus ($ORACLE_HOME, $ORACLE_SID).

  3. Permission issues with the Oracle executables.

  4. Not enough CPU/RAM resources for the startup to complete. 

In any case, the associated trace file will give you the exact reason for the ORA-00445 error.

This may be a Linux kernel issue and it can also be unpublished bug (8527473( see MOSC for details)

  • Recent Linux kernels have a feature called Address Space Layout Randomization (ASLR).
  •  ASLR is a feature that is activated by default on some of the newer Linux distributions.
  •  ASLR is designed to load shared memory objects in random addresses.
  •  In Oracle, multiple processes map a shared memory object at the same address across the processes.
  •  With ASLR turned on, Oracle cannot guarantee the availability of this shared memory address.

This conflict in the address space means that a process trying to attach a shared memory object to a specific address may not be able to do so, resulting in a failure in shmat subroutine.
However, on subsequent retry (using a new process) the shared memory attachment may work. The result is a "random" set of failures in the alert log.
One solution to the ORA-00445 error:
* It should be noted that this problem has only been positively diagnosed in Redhat 5 and Oracle

* It is also likely, as per unpublished BUG:8527473, that this issue will reproduce running on Generic Linux platforms running any Oracle 11.2.0.x. or 12.1.0.x on Redhat/OEL kernels which have ASLR.

* This issue has been seen in both Single Instance and RAC environments.
You can verify whether ASLR is being used as follows:
# /sbin/sysctl -a | grep randomize
kernel.randomize_va_space = 1

If the parameter is set to any value other than 0 then ASLR is in use. On Redhat 5 to permanently disable ASLR. Add/modify this parameter in /etc/sysctl.conf
- kernel.randomize_va_space=0
- kernel.exec-shield=0
You need to reboot for kernel.exec-shield parameter to take effect. Note that both kernel parameters are required for ASLR to be switched off.
There may be other reasons for a process failing to start, however, by switching ASLR off, you can quickly discount ASLR being the problem. More and more issues are being identified when ASLR is in operation.

Oracle Training from Don Burleson 

The best on site "Oracle training classes" are just a phone call away! You can get personalized Oracle training by Donald Burleson, right at your shop!

Oracle training



Oracle Training at Sea
oracle dba poster

Follow us on Twitter 
Oracle performance tuning software 
Oracle Linux poster


Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals.  Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  

and include the URL for the page.


Burleson Consulting

The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services


Copyright © 1996 -  2017

All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.

Remote Emergency Support provided by Conversational