Oracle ist Prozessorientiert intern aufgebaut, Windows aber Thread basierend.
Daher wird für die Oracle „Prozessumgebung“ ein „Mutterthread“ für eine Instance über einen Service gestartet.
Der Service wird mit dem oradim Utiltity angelegt. Der Service kann nun auf Autostart gesetzt werden.
Über diese Registy Keys (HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_DATABASE ) wird das Verhalten beim Startup/Shutdown gesteuert:
(geschwärzter Bereich = SID!)
Leider kann unter Windows per Default nur entweder nur der Service oder die komplette DB gestartet werden.
Soll zum Beispiel in einer Standby Umgebung die DB Instance nur bis in den Mount Modus gestartet werden muss das mit einem eigenen Script umgesetzt werden. Wird der Start Mode auf Auto gestellt, öffnet sich die DB readonly und schon wird zur EE eine Oracle “Active Data Guard„ Lizenz benötigt!
In einer ASM Umgbung kann das Problem über Oracle Restart gelöst werden.
In einer Single Instance Standard Umgebung hilft ein Script um hier die DB nach dem Start wiederum nur im mount Modus zu starten.
Ablauf:
C:\Windows\System32\sc.exe config "ORACLE_MOUNT" depend= "OracleServiceGPI"
(auf das Leerzeichen nach dem = achten!!)