Patch Oracle Database avec AutoUpgrade
Dans cet article, nous expliquons étape par étape comment appliquer un correctif à une base de données Oracle 19c AutoUpgrade. AutoUpgrade l'outil recommandé par Oracle pour gérer les mises à jour des bases de données de manière plus rapide, plus sûre et plus simple. Nous allons également vous montrer comment utiliser AutoUpgrade appliquer un correctif à une base de données de manière automatique et simple.
Dans cet exemple, nous verrons comment, grâce à AutoUpgrade, nous pouvons non seulement appliquer des correctifs à une base de données, mais aussi télécharger les correctifs nécessaires et créer un nouveau répertoire racine Oracle, ce qui permet d'appliquer les correctifs selon la méthode recommandée « out-of-place ». Autoupgrade automatiquement les vérifications avant et après l'application des correctifs, ce qui en fait une méthode plus simple pour mettre à jour notre base de données.
Notre laboratoire
Base de datos 19c: versión 19.27
Multitenant: Si. PDBS (TESTPDB1).
RAC: No

Dans notre cas, nous avons la base de données en version 19.27.0.0.0 et nous allons appliquer le correctif 19.28.
1 – Préparer la base de données avant d'appliquer le correctif.
Quelle que soit la méthode utilisée, Oracle recommande toujours d'analyser la base de données ou d'effectuer une pré-vérification de l'état de la base de données afin de savoir si le correctif peut être appliqué sans problème.
Pour ce faire, nous lancerons AutoUpgrade mode « analyze », qui effectuera une analyse afin de vérifier si notre base de données semble prête à être mise à jour.
Autoupgrade un fichier de configuration contenant les informations relatives à la base de données à patcher.
Nous avons créé le fichier 01-simple.patching.cfg contenant les informations suivantes :
global.autoupgrade
patch1.source_home=/u01/app/oracle/product/19
patch1.target_home=/u01/app/oracle/product/19_28
patch1.sid=TEST
patch1.folder=/home/oracle/patch-repo
patch1.patch=RECOMMENDED,37738908
patch1.download=no
source_homeetsiddécrit la base de données actuelle.- global_log_dir répertoire où seront stockés les fichiers journaux.
target_homenous indique l'emplacement du nouveau répertoire Oracle Home. S'il n'existe pas, AutoUpgrade en AutoUpgrade un nouveau avec les mêmes caractéristiques que l'Oracle d'origine.folderindique à Autoupgrade se trouve le correctif à appliquer. Dans ce cas, nous l'avons téléchargé au préalable, mais vous pouvez demander à Autoupgrade télécharger le correctif automatiquement ; pour cela, vous devez lui fournir les identifiants valides de My Oracle Support.patchindique à AutoUpgrade correctif à appliquer.RECOMMENDEDCela implique la mise à jour OPatch de OPatch et de la dernière version, ainsi que des correctifs des paquets OJVM et Data Pump.downloadVous indiquez les informations d'identification où Oracle doit télécharger le correctif. Dans notre cas, cela ne s'applique pas, car il a déjà été téléchargé.
2 – Analyser la base de données avant d'appliquer le correctif.
Nous lançons la commande suivante avec l'option analyze
java -jar autoupgrade.jar -config scripts/01-simple.patching.cfg -mode analyze
3 – Suivre le processus
lsj -a 10
- lsj répertorie les tâches actives, c'est-à-dire notre « analyse » du patch, et s'actualise toutes les 10 secondes.

Nous attendons la fin du processus. Si tout est correct, le résultat sera similaire à celui-ci, avec « jobs falied 0 ».
4 – Nous vérifions les fichiers journaux
Avant d'appliquer définitivement le correctif, il est recommandé de consulter les fichiers HTML/log générés par AutoUpgrade. Ces fichiers fournissent un rapport récapitulatif de l'analyse et indiquent si la vérification préalable s'est déroulée correctement.

Le journal du rapport indique :
- La base de données à corriger sera notre base de données TEST.
- Nous effectuons une mise à jour de la version 19.27 à la version 19.28 (le patch que nous avons téléchargé).
- Dans votre propre environnement, lorsque AutoUpgrade des correctifs, il récupère toujours la dernière mise à jour disponible sur MOS lorsque vous spécifiezpatch=recommended.
Dans ce cas, nous ne sommes pas connectés à Oracle Support ; par conséquent, aucun correctif ne sera téléchargé, même si vous spécifiez patch=recommended. Dans un environnement connecté à Oracle, les correctifs seront téléchargés afin d'appliquer la dernière mise à jour disponible sur MOS. - Il est indiqué que tous les PRECHECKS sont corrects et qu'aucune action manuelle n'est nécessaire.
- Cette base de données est donc prête à être corrigée.
5 – Nous corrigeons la base de données.
java -jar autoupgrade.jar -configscripts/01-simple.patching.cfg -mode deploy
Nous vérifions l'état de notre patch :
lsj -a 10

lsj répertorie les tâches actives, c'est-à-dire notre « analyse » du patch, et s'actualise toutes les 10 secondes.
Si nous avons besoin de plus d'informations sur le processus, nous pouvons procéder comme suit.
Appuyez sur ENTRÉE sur l'écran précédent pour accéder à l'écran principal autoupgrade, où nous exécuterons la commande suivante
statut -travail 102 -a 10
Remarque : le numéro 102 indique le job de notre processus, que vous pouvez identifier dans la sortie de la commande lsj.

6- Nous vérifions les fichiers journaux.
La sortie de la commande affiche le chemin d'accès aux fichiers journaux. Il est conseillé de vérifier ces fichiers pendant l'application du correctif afin de s'assurer que tout se déroule correctement.
Une fois le processus terminé, nous pourrons voir ce qui suit.

Comme on peut le constater, AutoUpgrade créé un « point de restauration », ce qui nous permettra d'annuler le processus si nous rencontrons une erreur lors de l'application du correctif. Pour l'instant, nous ne le supprimons pas tant que nous n'avons pas vérifié que l'ensemble du processus s'est déroulé correctement.
Nous avons vérifié à nouveau minutieusement les fichiers journaux afin de nous assurer qu'aucune erreur ne s'était produite lors de l'application du correctif.
Nous vérifions que le patch est correctement appliqué.
export ORACLE_HOME=/u01/app/oracle/product/19_28/
opatch lspatches

Une fois que nous avons vérifié que tout est correct, nous pouvons supprimer le point de restauration.

Comme nous l'avons vu avec AutoPatch, nous pouvons effectuer automatiquement les opérations suivantes :
- Patcher la base de données.
- Un nouvel Oracle a été créé
- Mise à jour d'Opah et mises à jour des versions des correctifs requis.
- Tâches de pré-vérification et de post-installation après l'application du correctif.
- Copie des fichiers de configuration de l'ancienne base de données.
Enfin, nous mettrons à jour notre script de profil d'environnements afin qu'il s'adapte à notre nouveau Oracle Home.

Exemple profile19_28.env

