Oracle - Aktualizacja silnika bazy danych oraz klienta

  1. Wykonanie snapshotu maszyny
  2. Przygotowanie środowiska
     

Należy zweryfikować jaki jest aktualny patch do bazy danych oracle oraz do aktualizatora środowiska (program Opatch).

 


 


 

            image.png

 

                   image.png

 

                   image.png

"OPatch"

        image.png

 Wrzucanie patcha poprzez winscp do lokalizacji /install/oracle_patches
 

         image.png

         image.png

         image.png

         image.png 

  1. Aktualizacja Środowiska:

Aktualizacja OPatch oraz binariów dotyczy zarówno klienta jak i bazy danych Oracle. Aktualizacje i rekompilacje danych (datapatch) wykonuje się tylko dla bazy danych Oracle.

Aktualizacja OPatch

 

Usunięcie starego OPatch - rm -rf * z lokalizacji $ORACLE_HOME/OPatch
 

                   image.png

                   image.png

                  image.png

 

         image.png

 

             image.png

Aktualizacja binariów oraz OJVM bazy/klienta:
 

        image.png

                  image.png

                  image.png

 



                   image.png

4. Weryfikacja aktualizacji 

sqlplus / as sysdba
startup

        image.png 


image.png

          image.png

Po tych działaniach mamy zaktualizowną baze danych, OJVM jak i aktualizator OPatch i możemy przejść do aktualizacji danych:

Przechodzimy do katalogu OPatcha:

image.png

Na niektórych serwerach może być zainstalowane więcej niż jedna instancja! Przełączenie między instancjami odbywa się za pomocą polecenia: 

. oraenv

Po wykonaniu polecenia zobaczymy w nawiasach kwadratowych aktualnie wybraną instancje. Zmiana instancji następuje poprzez wpisanie nazwy instancji, na którą chcemy się przełączyć

image.png

Poniższe kroki wykonujemy każdorazowo dla wszystkich instancji!

Uruchamiamy polecenie datapatch

./datapatch --verbose

image.png

Patche powinny zacząć się instalować: 

image.png

W razie bezproblemowej aktualizacji output powinien wyglądać tak :

image.png

Po poprawnym patchowaniu danych logujemy się do bazy danych poprzez:

sqlplus / as sysdba

i weryfikujemy czy wszystkie komponenty są VALID:

select comp_name,version,status from dba_registry where STATUS <> 'VALID';

Bezproblemowy output powinien wyglądać tak: 

image.png

Należy też zweryfikować wersję:

col comp_id for a10
col VERSION_FULL for a12
col STATUS for a10
col MODIFIED for a21
SELECT comp_ID, version_full, status, modified FROM DBA_REGISTRY;

image.png

Uruchamiany : 

@?/rdbms/admin/utlrp.sql

output który powinniśmy zobaczyć to :

image.png

W razie problemów ze z którymś modułem:

image.png

image.png

Np dla modułu XDB uruchamiamy walidację:

exec DBMS_REGXDB.VALIDATEXDB;

image.png

Może się zdarzyć że schema SYS zablokowała wszystkie statystyki - odblokowujemy za pomocą:

exec dbms_stats.unlock_schema_stats('SYS');

image.png

Oraz uruchamiamy ponownie:

exec DBMS_REGXDB.VALIDATEXDB;
@?/rdbms/admin/utlrp.sql

Na koniec ustawiamy z poziomu konta z uprawnieniami roota poprawne uprawnienia dla extjob (aktualizacje może je zmienić, więc lepiej wykonać dla pewności poniższe komendy):

chown root $ORACLE_HOME/bin/extjob
chmod 4750 $ORACLE_HOME/bin/extjob

image.png


Revision #1
Created 13 March 2025 12:55:48 by Tomasz Konieczny
Updated 13 March 2025 12:56:34 by Tomasz Konieczny