Eine Lösung besteht darin, sowohl x86- (32-Bit) als auch x64-Oracle-Clients auf Ihrem Computer zu installieren, dann spielt es keine Rolle, auf welcher Architektur Ihre Anwendung ausgeführt wird.
Hier eine Anleitung zur Installation des x86- und x64-Oracle-Clients auf einem Rechner:
Annahmen:Oracle Home heißt OraClient11g_home1
, Client-Version ist 11gR2
-
Entfernen Sie optional jeden installierten Oracle-Client (siehe So deinstallieren/vollständig entfernen Sie Oracle 11g (Client)?, wenn Probleme auftreten)
-
Laden Sie den Oracle x86-Client herunter und installieren Sie ihn, beispielsweise in
C:\Oracle\11.2\Client_x86
-
Laden Sie den Oracle x64-Client herunter und installieren Sie ihn in einem anderen Ordner , zum Beispiel nach
C:\Oracle\11.2\Client_x64
-
Öffnen Sie das Befehlszeilentool, gehen Sie zum Ordner
%WINDIR%\System32
(normalerweiseC:\Windows\System32
) und erstellen Sie einen symbolischen Linkora112
in den OrdnerC:\Oracle\11.2\Client_x64
(siehe Befehlsabschnitt unten) -
Wechseln Sie in den Ordner
%WINDIR%\SysWOW64
(normalerweiseC:\Windows\SysWOW64
) und erstellen Sie einen symbolischen Linkora112
in den OrdnerC:\Oracle\11.2\Client_x86
, (siehe unten) -
Ändern Sie den
PATH
Umgebungsvariable, ersetzen Sie alle Einträge wieC:\Oracle\11.2\Client_x86
undC:\Oracle\11.2\Client_x64
vonC:\Windows\System32\ora112
, bzw. deren\bin
Unterordner. Hinweis:C:\Windows\SysWOW64\ora112
darf sich nicht in der PATH-Umgebung befinden. -
Legen Sie bei Bedarf Ihren
ORACLE_HOME
fest Umgebungsvariable inC:\Windows\System32\ora112
-
Öffnen Sie Ihren Registrierungseditor. Legen Sie den Registrierungswert
HKLM\Software\ORACLE\KEY_OraClient11g_home1\ORACLE_HOME
fest nachC:\Windows\System32\ora112
-
Legen Sie den Registrierungswert
HKLM\Software\Wow6432Node\ORACLE\KEY_OraClient11g_home1\ORACLE_HOME
fest nachC:\Windows\System32\ora112
(nichtC:\Windows\SysWOW64\ora112
) -
Du bist fertig! Jetzt können Sie den x86- und x64-Oracle-Client nahtlos zusammen verwenden, d. h. eine x86-Anwendung lädt die x86-Bibliotheken, eine x64-Anwendung lädt die x64-Bibliotheken ohne weitere Änderungen auf Ihrem System.
-
Wahrscheinlich ist es sinnvoll, Ihren
TNS_ADMIN
einzustellen Umgebungsvariable (bzw.TNS_ADMIN
Einträge in der Registrierung) an einen gemeinsamen Speicherort, zum BeispielTNS_ADMIN=C:\Oracle\Common\network
.
Befehle zum Erstellen symbolischer Links:
cd C:\Windows\System32
mklink /d ora112 C:\Oracle\11.2\Client_x64
cd C:\Windows\SysWOW64
mklink /d ora112 C:\Oracle\11.2\Client_x86
Hinweise:
Beide symbolischen Links müssen denselben Namen haben, z. ora112
.
Trotz ihres Namens Ordner C:\Windows\System32
enthält die x64-Bibliotheken, wohingegen C:\Windows\SysWOW64
enthält die x86 (32-Bit)-Bibliotheken. Lassen Sie sich nicht verwirren.