Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

BadImageFormatException। यह तब होगा जब 64 बिट मोड में 32 बिट Oracle क्लाइंट स्थापित घटकों के साथ चल रहा हो

एक समाधान यह है कि अपनी मशीन पर x86 (32-बिट) और x64 Oracle क्लाइंट दोनों को स्थापित करें, फिर इससे कोई फ़र्क नहीं पड़ता कि आपका एप्लिकेशन किस आर्किटेक्चर पर चल रहा है।

यहाँ एक मशीन पर x86 और x64 Oracle क्लाइंट स्थापित करने का निर्देश दिया गया है:

अनुमान:Oracle होम को OraClient11g_home1 कहा जाता है , क्लाइंट संस्करण 11gR2 है

  • वैकल्पिक रूप से किसी भी स्थापित Oracle क्लाइंट को हटा दें (देखें कि Oracle 11g (क्लाइंट) को अनइंस्टॉल / पूरी तरह से कैसे हटाएं? यदि आप समस्याओं का सामना करते हैं)

  • Oracle x86 क्लाइंट को डाउनलोड और इंस्टॉल करें, उदाहरण के लिए C:\Oracle\11.2\Client_x86 में

  • Oracle x64 क्लाइंट विभिन्न फ़ोल्डर में डाउनलोड और इंस्टॉल करें , उदाहरण के लिए C:\Oracle\11.2\Client_x64

  • कमांड लाइन टूल खोलें, फोल्डर पर जाएं %WINDIR%\System32 (आमतौर पर C:\Windows\System32 ) और एक प्रतीकात्मक लिंक बनाएं ora112 फ़ोल्डर में C:\Oracle\11.2\Client_x64 (आदेश अनुभाग नीचे देखें)

  • फ़ोल्डर में बदलें %WINDIR%\SysWOW64 (आमतौर पर C:\Windows\SysWOW64 ) और एक प्रतीकात्मक लिंक बनाएं ora112 फ़ोल्डर में C:\Oracle\11.2\Client_x86 , (नीचे देखें)

  • PATH को संशोधित करें पर्यावरण चर, सभी प्रविष्टियों को बदलें जैसे C:\Oracle\11.2\Client_x86 और C:\Oracle\11.2\Client_x64 द्वारा C:\Windows\System32\ora112 , उनके संबंधित \bin सबफ़ोल्डर नोट:C:\Windows\SysWOW64\ora112 पथ वातावरण में नहीं होना चाहिए।

  • यदि आवश्यक हो तो अपना ORACLE_HOME सेट करें पर्यावरण चर से C:\Windows\System32\ora112

  • अपना रजिस्ट्री संपादक खोलें। रजिस्ट्री मान सेट करें HKLM\Software\ORACLE\KEY_OraClient11g_home1\ORACLE_HOME से C:\Windows\System32\ora112

  • रजिस्ट्री मान सेट करें HKLM\Software\Wow6432Node\ORACLE\KEY_OraClient11g_home1\ORACLE_HOME से C:\Windows\System32\ora112 (नहीं C:\Windows\SysWOW64\ora112 )

  • आप कर चुके हो! अब आप x86 और x64 Oracle क्लाइंट को एक साथ निर्बाध रूप से उपयोग कर सकते हैं, यानी एक x86 एप्लिकेशन x86 लाइब्रेरी लोड करेगा, एक x64 एप्लिकेशन आपके सिस्टम पर बिना किसी और संशोधन के x64 लाइब्रेरी को लोड करता है।

  • संभवत:अपना TNS_ADMIN . सेट करना एक बुद्धिमान विकल्प है पर्यावरण चर (प्रतिक्रिया TNS_ADMIN रजिस्ट्री में प्रविष्टियाँ) एक सामान्य स्थान पर, उदाहरण के लिए TNS_ADMIN=C:\Oracle\Common\network

प्रतीकात्मक लिंक बनाने के आदेश:

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

नोट:

दोनों सांकेतिक लिंक का एक ही नाम होना चाहिए, उदा. ora112

उनके नाम फ़ोल्डर के बावजूद C:\Windows\System32 इसमें x64 पुस्तकालय हैं, जबकि C:\Windows\SysWOW64 x86 (32-बिट) पुस्तकालय शामिल हैं। भ्रमित न हों।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle जॉब शेड्यूलर के साथ IRI डेटा इंटीग्रेशन जॉब्स को स्वचालित करें

  2. Oracle में UTF8 वर्ण सेट को कैसे कॉन्फ़िगर करें?

  3. हम संग्रहित प्रक्रिया में आउटपुट पैरामीटर आकार को कैसे परिभाषित कर सकते हैं?

  4. Oracle प्रदर्शन और ट्यूनिंग प्रश्नोत्तरी

  5. ORA-03113:संचार चैनल पर फ़ाइल का अंत