Basisdatenbank erstellen gescheitert

Sollte etwas mit beim Erzeugen der Basisdatenbank nicht funktionieren und die Oracle Processe der Instance sind nicht beendet, dann kann man diese beenden, indem man sich als sysdba anmeldet und mit dem Befehl shutdown die Instance herunterfährt.

oracle@tux01:~$ sqlplus /nolog <<EOF
conn / as sysdba
shutdown abort;
EOF

Wurden schon Datafiles erzeugt, so müssen die gelöscht werden.

oracle@tux01:~$ find /oracle/oradata/DB01/ -type f -exec rm {} \;

Ist die Installation gescheitert, und die Oracle Prozesse wurden nicht richtig beendet, zum Beispiel mit kill -9, dann wird der belegte Speicher in der Shared Memory und Semaphore Arrays nicht mehr frei gegeben. Um dies Speicherbereiche zu löschen, gibt es den Befehl ipcrm und zum Anzeigen ipcs. Solange dies Speicherbereiche nicht gelöscht sind, lässt sich Oracle nicht starten und gibt die Fehlermeldung:

ORA-01081: cannot start already-running ORACLE - shut it down first aus.

Hier wird kurz demonstriert, wie man diese Speicherbereiche löscht.

oracle@tux01:~$ ipcs

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status
0x00000000 524288     oracle    640        4194304    0                       
0x00000000 557057     oracle    640        50331648   0                       
0x00000000 589826     oracle    640        83886080   0                       
0x2a0549d4 622595     oracle    640        71303168   0                       

------ Semaphore Arrays --------
key        semid      owner      perms      nsems      status      
0x9ac10ec0 622592     oracle    640        104       

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages    

oracle@tux01:~$ for SHMID in `ipcs -m |grep oracle|awk '{print $2}'`; 
do ipcrm shm $SHMID; 
done
resource(s) deleted
resource(s) deleted
resource(s) deleted
resource(s) deleted

oracle@tux01:~$ for SEMID in `ipcs -s |grep oracle|awk '{print $2}'`; 
do ipcrm sem $SEMID; 
done
resource(s) deleted

oracle@tux01:~/admin/DB01/create$ ipcs

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status      

------ Semaphore Arrays --------
key        semid      owner      perms      nsems      status      

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages



Urs Stotz 2005-09-01