Ik moest onlangs met mijn SysAdmin werken aan een kleine upgrade van het besturingssysteem op een RAC-cluster met twee knooppunten. Ik gebruik Oracle Grid Infrastructure 11.2.0.2 met Oracle RDBMS 11.2.0.2 en we waren aan het upgraden van Oracle Enterprise Linux 5.2 naar 5.8.
Zoals de meeste Oracle DBA's weten, is het een goed idee om de Oracle-software opnieuw te compileren na een OS-upgrade. Voor de Oracle RDMBS-software is dit zo eenvoudig als "$ORACLE_HOME/bin/relink all". Maar hoe zit het met de Grid Infrastructure-software?
Als je Metalink Note 220970.1 RAC:Veelgestelde vragen leest, staat er dat je voor 11.2 en hoger opnieuw moet linken na een OS-upgrade (lagere versies hebben de relink niet nodig). Ik denk echter dat de stappen een beetje misleidend zijn, zoals ik gisteravond ontdekte. De stappen die deze notitie geeft zijn als volgt:
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
Wat de instructies je niet vertellen, is dat de laatste aanroep naar rootcrs.pl Grid Infrastructure zal starten, wat voor de meeste mensen een automatische herstart betekent van de instances die onder controle van GI draaien. Maar wacht eens even! Ik kreeg niet de kans om de Oracle RDBMS-software opnieuw te compileren! Dus hier zijn mijn aangepaste stappen om alles opnieuw te compileren:
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
Op deze manier compileren we de Grid Infrastructure-software opnieuw en vervolgens de RDBMS-software. Dan zal de laatste aanroep naar rootcrs.pl GI starten en de instanties starten.