मुझे हाल ही में अपने SysAdmin के साथ दो-नोड RAC क्लस्टर पर एक मामूली OS अपग्रेड पर काम करना पड़ा। मैं Oracle RDBMS 11.2.0.2 के साथ Oracle Grid Infrastructure 11.2.0.2 चला रहा हूँ और हम Oracle Enterprise Linux 5.2 से 5.8 में अपग्रेड कर रहे थे।
जैसा कि अधिकांश Oracle DBA जानते हैं, OS अपग्रेड के बाद Oracle सॉफ़्टवेयर को पुन:संकलित करना एक अच्छा विचार है। Oracle RDMBS सॉफ़्टवेयर के लिए, यह "$ORACLE_HOME/bin/relink all" जितना आसान है। लेकिन ग्रिड इंफ्रास्ट्रक्चर सॉफ्टवेयर के बारे में क्या?
यदि आप मेटालिंक नोट 220970.1 आरएसी:अक्सर पूछे जाने वाले प्रश्न पढ़ते हैं, तो यह बताता है कि 11.2 और उच्चतर के लिए, आपको ओएस अपग्रेड के बाद फिर से लिंक करना चाहिए (निचले संस्करणों को फिर से लिंक करने की आवश्यकता नहीं है)। हालाँकि, मुझे लगता है कि कदम थोड़े भ्रामक हैं जैसा कि मुझे कल रात पता चला। इस नोट में दिए गए चरण इस प्रकार हैं:
As root:
cd $GRID_HOME/crs/install
perl rootcrs.pl -unlock
As GRID_HOME owner ("oracle" in my case):
export ORACLE_HOME=$GRID_HOME
$ORACLE_HOME/bin/relink
As root:
cd $GRID_HOME/crs/install
perl rootcrs.pl -patch
निर्देश जो आपको बताने में विफल हैं, वह यह है कि rootcrs.pl पर अंतिम कॉल ग्रिड इन्फ्रास्ट्रक्चर शुरू करेगी, जिसका अर्थ अधिकांश लोगों के लिए जीआई के नियंत्रण में चल रहे इंस्टेंस का स्वचालित पुनरारंभ होता है। लेकिन एक मिनट रुकिए! मुझे Oracle RDBMS सॉफ़्टवेयर को पुन:संकलित करने का मौका नहीं मिला! तो सब कुछ पुन:संकलित करने के लिए मेरे संशोधित चरण यहां दिए गए हैं:
As root:
cd $GRID_HOME/crs/install
perl rootcrs.pl -unlock
As GRID_HOME owner ("oracle" in my case):
export ORACLE_HOME=$GRID_HOME
$ORACLE_HOME/bin/relink
export ORACLE_HOME={rdbms home}
$ORACLE_HOME/bin/relink all
As root:
cd $GRID_HOME/crs/install
perl rootcrs.pl -patch
इस तरह, हम ग्रिड इंफ्रास्ट्रक्चर सॉफ्टवेयर और फिर आरडीबीएमएस सॉफ्टवेयर को फिर से कंपाइल करते हैं। फिर rootcrs.pl पर अंतिम कॉल जीआई शुरू करेगी और इंस्टेंस शुरू करेगी।