top of page

Autoupgrade - Scenario 3

  • Autorenbild: Christian Floreck
    Christian Floreck
  • 3. Jan. 2023
  • 2 Min. Lesezeit

Autoupgrade - Das Schweizer Taschenmesser Scenario 2, Std 19 nonPDB in Std 19 PDB






Die Installation:


Die Installation wird des Autoupgrade Tool wird im ersten Teil beschrieben.


Grundlegende Informationen über den Aufbau der Konfiguration Datei findet ihr im zweiten Teil des Blogs.


Das Scenario:


Wir bewegen uns in einem Standard Edition Umfeld.

Es wurden Datenbank im 19 Release angelegt, allerdings nicht als PDBs soll in eine 19c PDB umgewandelt werden.

Streng genommen handelt es sich nicht um ein Upgrade, sondern eine Migration. Die üblichen Vorabüberlegungen:

  1. Wie teste ich die Migration? Während des gesamten Testablaufs muss Datenbank, die upzugraden ist, natürlich weiterhin zur Verfügung stehen, Es muss ein produktionsidentisches System zur Verfügung gestellt. werden,

  2. Wie führe ich einen schnellen und sicheren Rollback durch ? Den "Guaranteed Restore Point" haben wir, da Std. Edition, nicht zur Verfügung.


Wichtig: Die Ziel Datenbank (19er CDB) muss angelegt worden


Wir greifen auf die gleiche Technik zurück, die wir auch bei der Migration im 12er Umfeld genutzt haben (Siehe Scenario 1)

Es erfolgt also erst ein Kopieren der Quelldatenbank (hier einer PDB) in die Zieldatenbank mittels DB Link. Dann erfolgt eine Migration auf 19c. Ein Start von des Upgrade Scripts ist nicht nötig, da das Quellsystem schon einer 19er Release ist - es ist "nur" die Umwandlung in eine PDB notwendig.



Benötigt für dieses Herangehen werden also: Ein User auf der Quell Datenbank für den Database Link

CREATE USER clone IDENTIFIED BY clone ;

GRANT CREATE SESSION, CREATE PLUGGABLE DATABASE, SELECT_CATALOG_ROLE TO clone;

GRANT READ ON sys.enc$ TO clone;


Einen TNS Names Eintrag im Zielsystem, der in das Zielsystem verweist:

DBR19noPDB=

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = autoupg.darkwing.net)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = DBR19noPDB.darkwing.net)

)

)

Und einen Datenbank Link im Zielsystem.

CREATE DATABASE LINK CLONEDBR19nonPDB CONNECT TO clone IDENTIFIED BY clone USING 'DBR18db';

Die Konfugrationsdatei ähnelt der im Scenario 1 genutzten.

global.autoupg_log_dir=/home/oracle/autoupgrade/up19npdto19pdb_dblink

upg1.log_dir=/home/oracle/autoupgrade/up19npdto19pdb_dblink

upg1.sid=DBR19noPDB

upg1.restoration=no

upg1.source_home=/u01/app/oracle/product/19c/home3

upg1.target_home=/u01/app/oracle/product/19c/home3

upg1.source_dblink.DBR19noPDB=CLONEDBR19nonPDB 300

upg1.target_cdb=DB19CDB2

upg1.target_pdb_name.DBR19noPDB=FormerDB19npdb

upg1.target_pdb_copy_option.DBR19noPDB=file_name_convert=NONE

upg1.start_time=+60m


Wie gehabt analyze und fixup

Der Deploy, die PDB wird per DB Link kopiert.

Die PDB ist im Zielsystem erstellt worden

Es läuft nur die Umandlung in eine PDB

Nach Abschluss laufen beide Datenbanken weiter..





Die Überlegungen bezüglich der Services gelten auch hier. Nach Abschluss der Produktionsmigration muss sichergestellt werde, dass ein Service mit dem bisher vorhanden Namen angelegt wird.

alter session set container=DB19CDB2;

exec DBMS_SERVICE.CREATE_SERVICE('DBR19noPDB.darkwing.net',\

'DBR19noPDB.darkwing.net');

exec DBMS_SERVICE.START_SERVICE('DBR19noPDB.darkwing.net');

alter pluggable database DB19CDB2 save state;




Hiermit sind die drei genannten Szenarien abgehandelt. Freuen Sie sich auf den nächsten Blog ;-)




Bei Fragen schreib mich einfach an: oracle.wasistwas@outlook.com






Comentarios


bottom of page