ORA-27154 on Database Startup After System Crash

[grid@hostname ~]$ sqlplus / as sysasm

SQL*Plus: Release 11.2.0.3.0 Production on Fri Jul 3 11:31:12 2015

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup;

ORA-27154: post/wait create failed

ORA-27300: OS system dependent operation:semget failed with status: 17

ORA-27301: OS failure message: File exists

ORA-27302: failure occurred at: sskgpcreates

Solution:

You need to remove stray shared memory segments and semaphores.

 To get a list of shared memory and semaphore id's:

 [oracle@hostname ~]$ ipcs -a

------ Shared Memory Segments --------

key        shmid      owner      perms      bytes      nattch     status

0x00000000 425984     oracle     640        4096       0

0x00000000 458753     oracle     640        4096       0

0x1efd4768 491522     oracle     640        4096       0

------ Semaphore Arrays --------

key        semid      owner      perms      nsems

0x00000000 1540124    root       666        1

0x96b1110c 5275679    oracle     640        684

0xd95b59b9 4227104    root       666        2

0xa6797c54 5406753    oracle     640        684

0x000003d4 4292642    root       644        1

------ Message Queues --------

key        msqid      owner      perms      used-bytes   messages

 

To delete shared memory:

[oracle@hostname ~]$ ipcrm -m 425984

[oracle@hostname ~]$ ipcrm -m 458753

[oracle@hostname ~]$ ipcrm -m 491522

 
To delete semaphores:

 [oracle@hostname ~]$ ipcrm -s 5275679

 [oracle@hostname ~]$ ipcrm -s 5406753


[oracle@hostname ~]$ ipcs -a

------ Shared Memory Segments --------

key        shmid      owner      perms      bytes      nattch     status

 

------ Semaphore Arrays --------

key        semid      owner      perms      nsems

0x00000000 1540124    root       666        1

0xd95b59b9 4227104    root       666        2

0x000003d4 4292642    root       644        1

 

------ Message Queues --------

key        msqid      owner      perms      used-bytes   messages

Once you have removed those owned by Oracle and the dba group you are able to startup the database.
 
SQL> startup;
ASM instance started
 Total System Global Area  321507328 bytes
Fixed Size                  2228024 bytes
Variable Size             294113480 bytes
ASM Cache                  25165824 bytes
ASM diskgroups mounted
 
Explanation
 The system crash left the shared memory and semaphores owned by the crashed Oracle instance on the system.  These have to be removed before enough resources are available to bring the Oracle instance back up.

 

Comments