sql >> Database teknologi >  >> RDS >> Oracle

BadImageFormatException. Dette vil ske, når du kører i 64 bit-tilstand med 32-bit Oracle-klientkomponenterne installeret

En løsning er at installere både x86 (32-bit) og x64 Oracle Clients på din maskine, så er det lige meget, hvilken arkitektur din applikation kører på.

Her en instruktion til at installere x86 og x64 Oracle-klient på én maskine:

Antagelser:Oracle Home hedder OraClient11g_home1 , klientversionen er 11gR2

  • Fjern eventuelt enhver installeret Oracle-klient (se Sådan afinstallerer/fjerner du Oracle 11g (klient) helt? hvis du støder på problemer)

  • Download og installer Oracle x86 Client, for eksempel i C:\Oracle\11.2\Client_x86

  • Download og installer Oracle x64 Client i en anden mappe , for eksempel til C:\Oracle\11.2\Client_x64

  • Åbn kommandolinjeværktøjet, gå til mappen %WINDIR%\System32 (typisk C:\Windows\System32 ) og opret et symbolsk link ora112 til mappen C:\Oracle\11.2\Client_x64 (se kommandoafsnittet nedenfor)

  • Skift til mappen %WINDIR%\SysWOW64 (typisk C:\Windows\SysWOW64 ) og opret et symbolsk link ora112 til mappen C:\Oracle\11.2\Client_x86 , (se nedenfor)

  • Rediger PATH miljøvariabel, skal du erstatte alle poster som C:\Oracle\11.2\Client_x86 og C:\Oracle\11.2\Client_x64 af C:\Windows\System32\ora112 , henholdsvis deres \bin undermappe. Bemærk:C:\Windows\SysWOW64\ora112 må ikke være i PATH-miljøet.

  • Indstil om nødvendigt din ORACLE_HOME miljøvariabel til C:\Windows\System32\ora112

  • Åbn din registreringseditor. Indstil registreringsdatabasen værdi HKLM\Software\ORACLE\KEY_OraClient11g_home1\ORACLE_HOME til C:\Windows\System32\ora112

  • Indstil registreringsdatabasen værdi HKLM\Software\Wow6432Node\ORACLE\KEY_OraClient11g_home1\ORACLE_HOME til C:\Windows\System32\ora112 (ikke C:\Windows\SysWOW64\ora112 )

  • Du er færdig! Nu kan du bruge x86 og x64 Oracle-klient problemfrit sammen, dvs. et x86-program indlæser x86-bibliotekerne, et x64-program indlæser x64-bibliotekerne uden yderligere ændringer på dit system.

  • Sandsynligvis er det en klog mulighed at indstille din TNS_ADMIN miljøvariabel (henholdsvis TNS_ADMIN poster i registreringsdatabasen) til en fælles placering, for eksempel TNS_ADMIN=C:\Oracle\Common\network .

Kommandoer til at oprette symbolske 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

Bemærkninger:

Begge symbolske links skal have samme navn, f.eks. ora112 .

På trods af deres navne mappen C:\Windows\System32 indeholder x64-bibliotekerne, hvorimod C:\Windows\SysWOW64 indeholder x86 (32-bit) bibliotekerne. Bliv ikke forvirret.



  1. Sådan sletter du hele MySQL-databasen

  2. Arbejder hen imod Postgres-XL 9.5

  3. Fejlfinding af Microsoft SQL Server-fejl 18456

  4. Hvordan sletter man de øverste 1000 rækker fra en tabel ved hjælp af SQL Server 2008?