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

जीआई 12.1.0.2 और सेगमेंटेशन फॉल्ट को संकलित नहीं कर सकता

इसलिए मुझे हाल ही में उन चीजों पर कठिन समय हो रहा है जिन्हें मुझे बेहतर तरीके से जानना चाहिए। हम सब वहाँ पहले भी रहे हैं।

मैं अपने लैपटॉप पर परीक्षण किए गए 2-नोड आरएसी को फिर से बनाने की कोशिश कर रहा हूं। यह वर्चुअलबॉक्स 5.0 के साथ Oracle Linux 6.5 पर Oracle 12.1.0.2 होगा। बहुत आसान होना चाहिए, है ना? मैंने इस साल अप्रैल में इसे कैसे किया, इस पर निर्देश भी लिखे। मैं उसी सटीक लैपटॉप पर अपने दस्तावेज़ में समान सटीक चरणों का पालन कर रहा हूं लेकिन फिर भी मुझे अभी भी समस्याएं हैं। केवल दो चीजें जो बदली हैं, वह यह है कि मैं सीधे 12.1.0.2 पर जा रहा हूं (मेरा डॉक्टर 12.1.0.1 मेरा मानना ​​​​है) और मेरे पास अब मेरे लैपटॉप पर वीबी 5.0 है।

मेरे पास मेरे 2 वर्चुअल नोड बनाए गए हैं और जाने के लिए तैयार हैं। मैं ग्रिड इन्फ्रास्ट्रक्चर की स्थापना शुरू करने के लिए ओयूआई को सक्रिय करता हूं। जब OUI लिंकिंग चरण में पहुंच जाता है, तो मुझे एक त्रुटि संदेश मिलता है।

मेकफाइल के लक्ष्य 'इरमान इओरेकल' को लागू करने में त्रुटि।

हम सब जीवन में एक चौराहे पर रहे हैं। आपके पास बनाने के लिए एक विकल्प है। क्या मैं बाएं जाता हूं या क्या मैं दाएं जाता हूं? दुर्भाग्य से मेरे लिए, मैंने गलत दिशा बदल दी और अपने खाली समय के कुछ सप्ताह बर्बाद कर दिए। इस बिंदु पर, मुझे एक निर्णय लेना था। क्या मैं ठीक वैसा ही करता हूँ जैसा त्रुटि ने कहा है या क्या मैं अपने अनुभव पर भरोसा करता हूँ? मैंने आँख बंद करके त्रुटि को नज़रअंदाज़ किया और अपने अनुभव पर भरोसा किया। मुझे मूर्ख।

अभी दो महीने पहले मुझे ठीक वैसी ही त्रुटि हुई थी जब मैं जीआई 12.1.0.2 को टेस्टबेड पर संकलित करने के लिए नहीं मिला था। वह टेस्टबेड VMWare ESX होस्ट पर चल रहा था। मैंने Oracle सपोर्ट के साथ एक SR फाइल किया और उन्होंने मुझे बताया कि मेरी कंपाइल समस्या इसलिए थी क्योंकि मेरे पास प्रत्येक वर्चुअल मशीन के लिए पर्याप्त RAM नहीं थी। आभासी वातावरण होने के कारण, इसे ठीक करना काफी आसान था। मैंने अपने SysAdmin को वर्चुअल मशीनों पर RAM और स्वैप स्पेस को टक्कर दी थी और GI 12.1.0.2 बिल्कुल वादे के अनुसार संकलित किया गया था। इसलिए मैंने स्वाभाविक रूप से मान लिया कि मैं यहाँ उसी मुद्दे पर चल रहा था। अपने लैपटॉप पर, मैं रैम को उछालता रहा। मैंने स्वैप स्पेस का विस्तार किया। मैं यहां तक ​​​​कि खरोंच से नोड्स के पुनर्निर्माण के लिए भी चला गया। मैंने पिछले दो सप्ताह अनुभव की राह पर बिताए और मुझे यह ऊबड़-खाबड़, खुरदुरा, धूल भरा और बहुत अप्रिय लगा।

मुझे जो रास्ता अपनाना चाहिए था वह स्पष्ट रूप से पॉप-अप बॉक्स के अनुसार करना था ... अधिक विवरण के लिए लॉग फ़ाइल पढ़ें। जब मैंने यह सोचकर अपनी जिद पर काबू पा लिया कि मुझे इसका उत्तर पता है, तो मैंने लॉग फ़ाइल पढ़ी। मुझे अंत में निम्नलिखित संदेश मिले।

INFO: - Linking Oracle
INFO: rm -f /u01/app/crs12.1.0.2/rdbms/lib/oracle
INFO: /usr/bin/ld: cannot find -ljavavm12
collect2: ld returned 1 exit status
INFO: make: *** [/u01/app/crs12.1.0.2/rdbms/lib/oracle] Error 1

खैर यह अब पूरी तरह से स्पष्ट है! एक पुस्तकालय फ़ाइल गायब है। इंटरनेट पर एक त्वरित जांच ने मुझे आसानी से समाधान के लिए प्रेरित किया। मैं इस मुद्दे में अकेला नहीं हूं, लेकिन किसी कारण से OUI libjavavm12.a को $GRID_HOME/lib में कॉपी नहीं कर रहा है जैसा कि होना चाहिए। उस पॉप-अप बॉक्स के साथ अभी भी वहां बैठे हुए, मैं निम्नलिखित को नोड पर जारी करता हूं।

[oracle@host01 ~]$ export GRID_HOME=/u01/app/crs12.1.0.2
[oracle@host01 ~]$ cp $GRID_HOME/javavm/jdk/jdk7/lib/libjavavm12.a $GRID_HOME/lib

मैं फिर वापस पॉप-अप बॉक्स में गया और रिट्री बटन दबाया। निश्चित रूप से, लानत है और OUI ने अपना काम पूरा कर लिया है।

अद्यतन:क्लस्टर पर RDBMS 12.1.0.2 सॉफ़्टवेयर स्थापित करते समय मुझे भी यही समस्या थी। मैंने डेटाबेस सॉफ़्टवेयर के लिए भी ऑरैकल को सही ढंग से संकलित करने के लिए उसी सटीक फिक्स का उपयोग किया था।

लेकिन मैं नहीं किया गया था। जैसा कि ग्रिड इन्फ्रास्ट्रक्चर स्थापित करने वाला कोई भी जानता है, उन्हें इस प्रक्रिया में बाद में सभी नोड्स पर $GRID_HOME/root.sh स्क्रिप्ट चलाने की आवश्यकता है। जब मैंने इसे पहले नोड पर करने का प्रयास किया, तो मुझे "सेगमेंटेशन गलती" त्रुटि मिली। पता चला, जीआई 12.1.0.2 इंस्टॉलेशन में पर्ल के साथ एक समस्या है (और फिर, मैं यहां अकेला नहीं हूं)। यहां तक ​​कि निम्नलिखित को भी एक विभाजन दोष प्राप्त होगा:

cd $GRID_HOME/perl/bin
./perl -v

समाधान $GRID_HOME में पर्ल को फिर से स्थापित करना है। मुझे लॉरेंट लेटर्जेज़ द्वारा एक ब्लॉग प्रविष्टि मिली, जो बताती है कि यह कैसे किया जाता है। मैंने इसे अपने आप कभी नहीं समझा होगा। मेरे सभी नोड्स पर पर्ल को फिर से स्थापित करने के बाद, root.sh स्क्रिप्ट ठीक चल रही थी।

अद्यतन:क्लस्टर पर RDBMS 12.1.0.2 सॉफ़्टवेयर स्थापित करते समय मुझे भी यही समस्या थी। मैंने पर्ल को बिना किसी विभाजन दोष के चलाने के लिए उसी सटीक सुधार का उपयोग किया।

हम सभी की तरह, मैं बहुत समय बचाने के लिए अपने अनुभव पर भरोसा करता हूं। एक महीने या एक साल पहले मैंने जो सीखा, वह आज भी लागू होता है। कभी-कभी, अनुभव हमारे रास्ते में आ जाता है और हमें एक ऐसी सड़क पर ले जाता है जिसे हम चाहते थे कि वह अधूरे रहे।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. उपनाम द्वारा समूह (ओरेकल)

  2. Oracle में CURRENT_DATE फ़ंक्शन

  3. PL/SQL में MM/DD/YYYY से YYYY-MM-DD में दिनांक स्वरूप कैसे बदलें?

  4. Oracle डेटाबेस TLS1.2 / SSL कनेक्शन JDBC थिन और JKS का उपयोग कर रहा है

  5. Oracle ऐप्स में FD_LOBS तालिका के बारे में आपको जो बातें अवश्य जाननी चाहिए