Showing results for 
Search instead for 
Did you mean: 


Go to solution
Sean OB_1
Honored Contributor


I need immediate assistance in getting a database back up.

The dba took it down hard and now it won't come back.

ORA-27100: shared memory realm already exists

How can I clear this from the SGA without rebooting the server?

F. X. de Montgolfier
Valued Contributor

Re: ORA-27100


here is the Oracle document in text format.

If you've got access to Metalink, there are other docs on the subject, but they appear to be less pertinent.


Sean OB_1
Honored Contributor

Re: ORA-27100

Thanks for the doc. I tried what it recommended with no luck.

I see this in the doc: Reducing the size of the SGA allows the instance to start and recover.

But nothing states how to do this. Does modifying the init file like the doc says do this?

What if other instances of the same version of oracle are still running? Does that matter?
Sean OB_1
Honored Contributor

Re: ORA-27100

Ok, I got it back up. Thanks for the information.

The icps command determines the shared memory and I was able to remove it.

However only after shutting down the other two databases that were run by the same ID.

Is there any way that I could have determined which shared memory ID was for each oracle instance that was running under the same ID?

For example assuming icps -m shows the following:

IPC status from as of Wed Dec 11 12:53:50 2002
Shared Memory:
m 0 0x50002cde --rw-r--r-- root root
m 2 0x06347849 --rw-rw-rw- root root
m 3 0x3100e002 --rw-rw-rw- root root
m 6 0xd1ca3da8 --rw-r----- oracle dba
m 604 0xf1cacda8 --rw-r----- oracle dba
m 1205 0x2ba74bdc --rw-r----- oracle dba
m 5007 0x3e6b161c --rw-r----- oracle8i dba

there are three segments owned by oracle. How can I determine which are related to which instance of oracle?

Brian Crabtree
Honored Contributor

Re: ORA-27100

You can login to 'svrmgrl' and issue the "oradebug" command to dump the memory settings. Once this is done, you will find the shared memory segments and semephores in the dump file in the user_dump_dest. You will need to do this for each running database, and remove the segments for each segment that is not listed.

Steven E. Protter
Exalted Contributor

Re: ORA-27100

here is a critical add thing to do that might not seem related but is.

/usr/sbin/setprivgrp dba MLOCK

As root. I don't seem to need to do this in 11.11, but in 11.00 after the December 2000 patch set, I needed this.

Also, if you have some other product doing asynchronous access like Software AG adabas, it can hose up the shared memroy realm and trigger your Oracle area.

The only solution thus far if the ipcrm -m command fails is punt, as in reboot.
Steven E Protter
Owner of ISN Corporation