Mise à niveau de PDB 19c 26ai Autoupgrade
Dans cet article, nous allons vous expliquer comment mettre à niveau une base de données de 19c 26ai. Pour ce faire, je vais vous montrer comment procéder à l'aide Autoupgrade d'Oracle update Advisor détecter et update Advisor résoudre les problèmes de manière proactive avant de lancer la mise à niveau.
Sur la même machine (oracle19cdb1). Nous allons migrer une base de données en architecture multitenant TESTPDB1) de la version 19.3 vers un nouveau conteneur déjà créé en version 23.23.26.1.0. Pour effectuer cette mise à niveau, nous utiliserons autoupgrade, l'option recommandée par Oracle.
Machine : oracle19cdb1
Source : Oracle 19c (19.3.0.0.0) -> CDB (test) -> PDB TESTPDB1)
Destination : Oracle 26ai (23.26.1.0.0) -> CDB (orcl) ->
1- Téléchargez la dernière version d'autoupgrade
Il est recommandé de télécharger la dernière version de l'utilitaire «AutoUpgradeavant de commencer à effectuer l'une quelconque de ces tâches.
Pour ce faire, téléchargez le logiciel à l'adresse suivante.
https://www.oracle.com/database/upgrades/

Tu peux aussi le faire directement
wgetautoupgrade
Selon la version d'Oracle que nous utilisons, nous pouvons vérifier que l'outil autoupgrade est déjà installé dans le répertoire par défaut $ORACLE_HOME/rdbms/admin autoupgrade
Dans ce cas, si nous ne disposons pas de la dernière version, nous la remplacerons par la dernière version récemment téléchargée.

oracle@oracle19cdb1 admin]$ mv autoupgrade.jar autoupgrade.jar_old
oracle@oracle19cdb1 admin]$ wgetautoupgrade–2026-04-03 05:17:17–

2 – Nous créons le fichier de configuration Autoupgrade.
Avant de créer le fichier de configuration définitif que nous lancerons avec autoupgrade.jar en spécifiant les paramètres nécessaires à la mise à niveau, l'utilitaire autoupgrade.jar permet, entre autres, de créer un fichier d'exemple sur lequel nous appuyer.
Nous exécutons la commande suivante :
java autoupgrade.jar -create_sample_file config

Le fichier /tmp/sample_config.cfg est créé avec des paramètres par défaut qui vous aideront à configurer votre fichier de configuration.

Extrait du fichier créé.
À l'aide de ce fichier d'exemple, nous allons créer un fichier simple adapté à notre environnement.
Voici notre fichier upgrade26.cfg
[oracle@oracle19cdb1 admin]$ cat /tmp/upgrade26.cfg
global.autoupg_log_dir=/tmp/upgrade
upg1.source_home=/home/oracle/software/dbhome19c
upg1.target_home=/oradata1/software
upg1.sid=test
upg1.target_cdb=orcl
upg1.restoration=no
Explication
global.autoupg_log_dir=/tmp/upgrade -> répertoire des journaux
upg1.source_home=/home/oracle/software/dbhome19c -> Oracle Home source
upg1.target_home=/oradata1/software -> Oracle Home destination
upg1.sid=test -> SID de la base de données source
upg1.target_cdb=orcl -> CDB de destination
upg1.restoration=no -> Point de restauration au cas où il faudrait effectuer une restauration de l'opération.
Recommandé, dans ce cas, il est défini sur « no » car il s'agit d'un test.
3 – Nous analysons notre base de données.
Avant de lancer une mise à niveau, nous pouvons vérifier si notre base de données est prête à subir cette mise à niveau sans problème.
java autoupgrade.jar -config /tmp/upgrade26.cfg -mode analyze
Nous lançons le pré-contrôle.

Lorsqu'on le lance, l'erreur suivante s'affiche :
Unsupported Java Runtime Environment 24 AutoUpgrade must run with Java version 11
Pour résoudre ce problème, il faut télécharger une version certifiée pour cette mise à jour.
Vous pouvez télécharger cette version à partir de la page suivante :
java
Sur cette page, téléchargez le fichier correspondant à votre système d'exploitation et à la version requise par l'outil.

Une fois le fichier téléchargé, nous installons le rpm.
[root@oracle19cdb1 Téléchargements]# rpm jdk-11.0.31_linux-x64_bin.rpm
Vérification en cours… ################################# [100 %]
Préparation en cours… ################################# [100 %]
Mise à jour / installation…
1:jdk-11-2000:11.0.31-9 ################################# [100 %]
Nous effectuons la mise à niveau avec la version de java :
oracle@oracle19cdb1 admin]$java autoupgrade.jar -config /tmp/upgrade26.cfg -mode analyze
AutoUpgrade .5.260117 a été lancé avec les options internes par défaut
Traitement du fichier de configuration…
+——————————–+
| Lancement de l'exécution AutoUpgrade
+——————————–+
1 PDB analysé
Tapez « help » pour lister les commandes de la console
Autoupgrade redirigera vers la console pour suivre l'état de notre vérification :
Traitement du fichier de configuration…
+——————————–+
| Lancement de l'exécution AutoUpgrade
+——————————–+
1 PDB analysé
Tapez « help » pour afficher la liste des commandes de la console
upg>
Il existe plusieurs façons de surveiller les processus en cours d'exécution dans Autopugrade. L'une d'entre elles consiste à ajouter la commande lsj -a 10: l'état de l'analyse de notre base de données s'affichera alors à l'écran, permettant de vérifier les paramètres de notre fichier de configuration.
Explication de la commande :
lsj (affiche la liste des tâches)
-a (affiche toutes les tâches, actives et inactives)
10 (intervalle de rafraîchissement en secondes de la commande lancée)
Il existe différentes façons de suivre l'avancement de nos travaux ; nous en verrons quelques-unes dans cet exemple.

Cela nous renvoie un numéro de tâche, dans ce cas 100, grâce auquel nous pourrons consulter plus d'informations sur la tâche exécutée (état, erreurs, etc.), si nécessaire.
Si tout est correct, nous verrons quelque chose qui ressemble à ceci :

Nous avons vérifié que tout s'est déroulé sans problème en consultant le fichier journal.

Nous pouvons maintenant lancer la mise à niveau. Dans ce cas, nous n'avons pas de point de restauration upg1.restoration=no, mais pour les environnements de production, je recommande toujours d'étudier cette possibilité.
4 – Mise à niveau de la base de données PDB> 19C PDB>26ai
Une fois l'analyse (pré-vérification) terminée, nous pouvons lancer la mise à niveau de notre base de données, en l'occurrence notre pdb testpdb1), d'un conteneur 19c 26ai.
[oracle@oracle19cdb1 admin]$ java autoupgrade.jar -config /tmp/upgrade26.cfg -mode deploy
Cette fois-ci, nous allons surveiller la tâche de la manière suivante (status -job 101 -a 10).
upg>status -job 101 -a 10
Détails

Au bout de quelques minutes, notre PDB sera disponible PDB 26ai.

[oracle@oracle19cdb1 ~]$ cat /tmp/upgrade/cfgtoollogs/upgrade/auto/status/status.log
Autoupgrade RapportAutoupgrade
[Date] Ven. 24 avr. 03:04:51 CEST 2026
[Nom de l'étape] SYSUPDATES
[Status] SUCCESS
[Start Time] 2026-04-24 03:04:50
[Duration] 0:00:00
[Log Directory] /tmp/upgrade/test/101/sysupdates
Summary:/tmp/upgrade/test/101/dbupgrade/upg_summary.log
[oracle@oracle19cdb1 ~]$
5 - Vérifications après la mise à niveau.
Il ne reste plus qu'à vérifier que notre mise à niveau vers 26ai bien déroulée.
CDB 19C
Pour cela, nous nous connectons à la base de données source ;
Nous avons constaté que la base de données « testpdb1 » ne se trouve plus dans la base de données source.
[oracle@oracle19cdb1 101]$ sqlplus -v
SQL*Plus: version 19.0.0.0.0 – Production
Version 19.3.0.0.0
[oracle@oracle19cdb1 101]$ sqlplus / as sysdba
SQL*Plus: version 19.0.0.0.0 – Production le vendredi 24 avril 08:11:06 2026
Version 19.3.0.0.0
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
——————————————————————
2 PDB READ ONLY NO
CDB 26AI
Nous nous connectons au conteneur 26AI nous avons effectué la mise à niveau vers 26ai nous vérifions que notre PDB a bien été migrée vers 26ai.
[oracle@oracle19cdb1 admin]$ sqlplus -v
SQL*Plus: version 23.26.1.0.0 – Production
Version 23.26.1.0.0
[oracle@oracle19cdb1 admin]$ sqlplus / as sysdba
SQL*Plus: version 23.26.1.0.0 – Production le vendredi 24 avril à 08:10:46 2026
Version 23.26.1.0.0
Copyright (c) 1982, 2025, Oracle. Tous droits réservés.
Connecté à :
Oracle AI Database 26ai Edition Version 23.26.1.0.0 – Production
Version 23.26.1.0.0
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
————————————————————-
2 PDB LECTURE SEULE NON
3 ORCLPDB LECTURE ÉCRITURE NON
4 TESTPDB1 LECTURE ÉCRITURE NON

Les options Autoupgrade très nombreuses ; n'oubliez pas qu'il s'agit de l'option recommandée et prise en charge par Oracle. Je vais rédiger d'autres cas pratiques que j'ajouterai à mon blog au cas où ils pourraient vous être utiles.

