Katastrophe: Windows 64Bit, Oracle DB 64Bit und Oracle Client 32Bit

Von Zeit zu Zeit ist man als Oracle-DBA dazu gezwungen, Datenbanken unter Windows zu betreiben. Als wenn das nicht genug Ärger bedeutet, soll auch noch neben der 64Bit Datenbank ein 32Bit Client installiert werden.

Es gibt eine ganze Sammlung (Oracle Note 1157463.1) von Problemen die unter Windows auftreten wenn man versucht, ein zweites oder drittes Oracle-Produkt zu installieren. Mit Oracle-Produkt meine ich nicht Java oder ähnliches, sondern alles was mit dem Oracle Universal Installer installiert wird.

Neben verschiedenen Java-Problemen, Chaos im Inventory oder andere Kleinigkeiten gibt es noch dieses Problem:

Der OUI wurde mit “Als Administrator ausführen” ausgeführt und startet ganz normal. Am Ende des Assistenten klickt man auf “Install”. Der Installationsdialog erscheint für 1-3 Sekunden und verschwindet wieder. Wer in den Installationslogs nach weiteren Informationen sucht, wird nicht fündig denn diese sind leer. Das Verhalten wurde in der Oracle-Community bereits diskutiert, leider ohne Erfolg: https://community.oracle.com/thread/2192825?tstart=0
Dieses Problem scheint auch nicht immer aufzutreten, denn sonst gäbe es im Internet sicher schon mehrere Komplettlösungen dazu.

Das Problem liegt an den Registry-Einträgen im Zusammenhang mit dem Oracle Inventory Pfad.

Nach der Installation von Oracle DB 64Bit gibt es den Registry-Key “inst_loc” unter [HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE]. Dieser verweist auf das Oracle-Inventory unter “C:\Program Files\Oracle\Inventory“.

Der 32Bit-Installer sucht zusätzlich nach dem Registry-Key “inst_loc” in [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Oracle]. Diesen gibt es noch nicht und da dies ein 32Bit-Installer ist, müsste dementsprechend der Pfad “C:\Program Files (x86)\Oracle\Inventory” heißen. Den Konflikt zwischen den beiden Keys/Pfaden kann der Installer dann scheinbar nicht lösen und stürzt ab.

Wenn dieser Pfad vor der Installation des Oracle Client 32Bit manuell angelegt wird, funktioniert die Installation. Es kommt also darauf an, dass die beiden Registry-Keys [HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\inst_loc] und [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Oracle\inst_loc] auf den selben Pfad zeigen.

That’s IT

Update 02/2017: Oracle hat ein Dokument zu dem Thema veröffentlicht: 1292785.1. Obwohl es von 2013 ist, muss es wohl erst vor kurzem zugänglich gemacht worden sein (Sonst hätte ich es bei meiner stunden langen Recherche in MOS mit Sicherheit gefunden!). Mir ist völlig schleierhaft wie dieses Dokument so alt sein kann und doch wurde der Bug nicht behoben. Da lagen schon ein paar Versionen zwischen Dezember 2013 und Januar 2017.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a website or blog at WordPress.com

Up ↑

%d bloggers like this: