Niedawno musiałem pracować z moim SysAdminem nad drobną aktualizacją systemu operacyjnego w dwuwęzłowym klastrze RAC. Używam Oracle Grid Infrastructure 11.2.0.2 z Oracle RDBMS 11.2.0.2 i aktualizowaliśmy z Oracle Enterprise Linux 5.2 do 5.8.
Jak wie większość administratorów baz danych Oracle, dobrym pomysłem jest ponowna kompilacja oprogramowania Oracle po aktualizacji systemu operacyjnego. W przypadku oprogramowania Oracle RDMBS jest to tak proste, jak „$ORACLE_HOME/bin/relink all”. Ale co z oprogramowaniem Grid Infrastructure?
Jeśli czytasz Metalink Note 220970.1 RAC:Często zadawane pytania, stwierdza, że w przypadku wersji 11.2 i nowszych należy ponownie połączyć się po aktualizacji systemu operacyjnego (wersje starsze nie wymagają ponownego połączenia). Myślę jednak, że kroki są nieco mylące, jak dowiedziałem się zeszłej nocy. Kroki podane w tej notatce są następujące:
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
Czego instrukcje nie mówią to, że ostatnie wywołanie rootcrs.pl uruchomi Grid Infrastructure, co dla większości ludzi oznacza automatyczny restart instancji działających pod kontrolą GI. Ale poczekaj chwilę! Nie miałem okazji przekompilować oprogramowania Oracle RDBMS! Oto moje zmodyfikowane kroki, aby ponownie skompilować wszystko:
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
W ten sposób rekompilujemy oprogramowanie Grid Infrastructure, a następnie oprogramowanie RDBMS. Wtedy ostatnie wywołanie rootcrs.pl uruchomi GI i uruchomi instancje.