Mise à jour de ressources de système de base de données à l'aide de dbcli

Vous pouvez vous servir de l'utilitaire dbcli pour mettre à jour les ressources de système de base de données. Cela inclut la mise à jour du système de base de données, du système d'exploitation sur les noeuds du système de base de données et des répertoires de base de base de données.

Pour plus d'informations sur les commandes dbcli, reportez-vous au Référence de l'interface de ligne de commande d'Oracle Database.

Prérequis

  1. Préparation d'une mise à jour du système d'exploitation.

    Avant de mettre à jour le système d'exploitation, passez en revue les informations et instructions importantes suivantes :

    • Sauvegardez la base de données dans le système de base de données avant de tenter une mise à jour du système d'exploitation.
    • N'enlevez pas les packages d'un système de base de données. Toutefois, vous devrez peut-être enlever les packages RPM personnalisés (packages installés après le provisionnement du système) pour que la mise à jour soit effectuée.
    • Oracle recommande de tester minutieusement toutes les mises à jour sur un système autre que de production avant de mettre à jour un système de production.
    • L'image utilisée pour lancer un système de base de données est mise à jour régulièrement avec les mises à jour nécessaires. Une fois le système de base de données lancé, vous êtes responsable de l'application des mises à jour de sécurité du système d'exploitation requises publiées via le serveur YUM public Oracle.
    • Pour appliquer les mises à jour de système d'exploitation, le réseau cloud virtuel dans le système de base de données doit être configuré de façon à autoriser l'accès au référentiel YUM. Pour plus d'informations, reportez-vous à VCN et sous-réseaux.
  2. Exigences relatives à l'utilisation de SSH pour la connexion à un système de base de données.

    Pour vous connecter au système de base de données via SSH, vous avez besoin du chemin d'accès à la clé privée associée à la clé publique utilisée lors du lancement du système de base de données.

    Vous devez également disposer de l'adresse IP publique ou privée du système de base de données.

    Utilisez l'adresse IP privée pour vous connecter au système à partir de votre réseau sur site ou du réseau cloud virtuel. Cela inclut la connexion à partir d'un hôte situé sur site via un VPN ou FastConnect à votre réseau cloud virtuel, ou à partir d'un autre hôte dans le même réseau cloud virtuel. Utilisez l'adresse IP publique du système de base de données pour vous connecter au système depuis l'extérieur du cloud (sans VPN). Vous trouverez les adresses IP dans la console en procédant comme suit :

    1. Sur la page Détails du système de base de donnée, sous Ressources, cliquez sur Noeuds.
    2. Consultez les valeurs affichées dans les colonnes Adresse IP publique et Nom DNS et adresse IP privée de la table affichant les noeuds du système.

Recherche des mises à jour installées et disponibles

Procédez comme suit pour rechercher les mises à jour installées et disponibles.

  1. Connectez-vous via SSH au système de base de données.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Connectez-vous en tant qu'utilisateur opc, puis passez à l'utilisateur root à l'aide de la commande sudo. Utilisez sudo su - avec un trait d'union pour appeler le profil de l'utilisateur root, qui définira PATH sur le répertoire dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Affichez les versions des mises à jour installées à l'aide de la commande component. Si la colonne Version disponible indique un numéro de version pour un composant, vous devez mettre à jour ce dernier.

    dbcli describe-component

    Sortie :

    System Version
    ---------------
    12.1.2.10.0
    
    Component Name        Installed Version    Available Version
    --------------------- -------------------- --------------------
    OAK                   12.1.2.10.0          up-to-date
    GI                    12.1.0.2.161018      up-to-date
    ORADB12102_HOME1      12.1.0.2.160719      12.1.0.2.161018
  4. Affichez les versions des dernières mises à jour disponibles dans Object Storage à l'aide de la commande latestpatch.

    dbcli describe-latestpatch

    Sortie :

    componentType   availableVersion
    --------------- --------------------
    gi              12.1.0.2.161018
    db              11.2.0.4.161018
    db              12.1.0.2.161018
    oak             12.1.2.10.0

Mise à jour des composants de serveur

Procédez comme suit pour mettre à jour les composants de serveur Grid Infrastructure et de kit de gestion du stockage.

  1. Connectez-vous via SSH au système de base de données.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Connectez-vous en tant qu'utilisateur opc, puis passez à l'utilisateur root à l'aide de la commande sudo. Utilisez sudo su - avec un trait d'union pour appeler le profil de l'utilisateur root, qui définira PATH sur le répertoire dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Mettez à jour les composants de serveur à l'aide de la commande server.

    dbcli update-server

    Sortie :

    {
      "jobId" : "9a02d111-e902-4e94-bc6b-9b820ddf6ed8",
      "status" : "Created",
      "reports" : [ ],
      "createTimestamp" : "January 19, 2017 09:37:11 AM PST",
      "resourceList" : [ ],
      "description" : "Server Patching",
      "updatedTime" : "January 19, 2017 09:37:11 AM PST"
    }

    Notez la valeur jobId dans l'exemple ci-dessus.

  4. Vérifiez la sortie du travail à l'aide des commandes job et de la valeur jobId.

    dbcli describe-job -i 9a02d111-e902-4e94-bc6b-9b820ddf6ed8

    Sortie :

    Job details
    ----------------------------------------------------------------
                         ID:  9a02d111-e902-4e94-bc6b-9b820ddf6ed8
                Description:  Server Patching
                     Status:  Running
                    Created:  January 19, 2017 9:37:11 AM PST
                    Message:
    
    Task Name                                Start Time                          End Time                            Status
    ---------------------------------------- ----------------------------------- ----------------------------------- ----------
    Create Patching Repository Directories   January 19, 2017 9:37:11 AM PST     January 19, 2017 9:37:11 AM PST     Success
    Download latest patch metadata           January 19, 2017 9:37:11 AM PST     January 19, 2017 9:37:11 AM PST     Success
    Update System version                    January 19, 2017 9:37:11 AM PST     January 19, 2017 9:37:11 AM PST     Success
    Update Patching Repository               January 19, 2017 9:37:11 AM PST     January 19, 2017 9:38:35 AM PST     Success
    oda-hw-mgmt upgrade                      January 19, 2017 9:38:35 AM PST     January 19, 2017 9:38:58 AM PST     Success
    Opatch updation                          January 19, 2017 9:38:58 AM PST     January 19, 2017 9:38:58 AM PST     Success
    Patch conflict check                     January 19, 2017 9:38:58 AM PST     January 19, 2017 9:42:06 AM PST     Success
    Apply cluster-ware patch                  January 19, 2017 9:42:06 AM PST     January 19, 2017 10:02:32 AM PST    Success
    Updating GiHome version                  January 19, 2017 10:02:32 AM PST    January 19, 2017 10:02:38 AM PST    Success
  5. Vérifiez que les composants de serveur ont été mis à jour à l'aide de la commande component. La colonne Version disponible doit indiquer update-to-date.

Mise à jour des composants du répertoire de base de base de données

Procédez comme suit pour mettre à jour les composants du répertoire de base de base de données.

  1. Connectez-vous via SSH au système de base de données.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Connectez-vous en tant qu'utilisateur opc, puis passez à l'utilisateur root à l'aide de la commande sudo. Utilisez sudo su - avec un trait d'union pour appeler le profil de l'utilisateur root, qui définira PATH sur le répertoire dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Obtenez l'ID du répertoire de base de base de données à l'aide des commandes dbhome.

    dbcli list-dbhomes

    Sortie :

    ID                                   Name               DB Version Home Location
    ------------------------------------ -----------------  ---------- ------------------------------------------
    b727bf80-c99e-4846-ac1f-28a81a725df6 OraDB12102_home1    12.1.0.2  /u01/app/orauser/product/12.1.0.2/dbhome_1
  4. Mettez à jour les composants du répertoire de base de base de données en utilisant les commandes dbhome et en indiquant l'ID obtenu à l'étape précédente.

    dbcli update-dbhome -i b727bf80-c99e-4846-ac1f-28a81a725df6

    Sortie :

    {
      "jobId" : "31b38f67-f993-4f2e-b7eb-5bccda9901ae",
      "status" : "Created",
      "message" : null,
      "reports" : [ ],
      "createTimestamp" : "January 20, 2017 10:08:48 AM PST",
      "resourceList" : [ ],
      "description" : "DB Home Patching: Home Id is 52e2e799-946a-4339-964b-c203dee35328",
      "updatedTime" : "January 20, 2017 10:08:48 AM PST"
    }

    Notez la valeur jobId dans l'exemple ci-dessus.

  5. Vérifiez la sortie du travail à l'aide des commandes job et de la valeur jobId.

    dbcli describe-job -i 31b38f67-f993-4f2e-b7eb-5bccda9901ae

    Sortie :

    Job details
    ----------------------------------------------------------------
                         ID:  31b38f67-f993-4f2e-b7eb-5bccda9901ae
                Description:  DB Home Patching: Home Id is b727bf80-c99e-4846-ac1f-28a81a725df6
                     Status:  Success
                    Created:  January 20, 2017 10:08:48 AM PST
                    Message:
    
    Task Name                                Start Time                          End Time                            Status
    ---------------------------------------- ----------------------------------- ----------------------------------- ----------
    Create Patching Repository Directories   January 20, 2017 10:08:49 AM PST    January 20, 2017 10:08:49 AM PST    Success
    Download latest patch metadata           January 20, 2017 10:08:49 AM PST    January 20, 2017 10:08:49 AM PST    Success
    Update System version                    January 20, 2017 10:08:49 AM PST    January 20, 2017 10:08:49 AM PST    Success
    Update Patching Repository               January 20, 2017 10:08:49 AM PST    January 20, 2017 10:08:58 AM PST    Success
    Opatch updation                          January 20, 2017 10:08:58 AM PST    January 20, 2017 10:08:58 AM PST    Success
    Patch conflict check                     January 20, 2017 10:08:58 AM PST    January 20, 2017 10:12:00 AM PST    Success
    db upgrade                               January 20, 2017 10:12:00 AM PST    January 20, 2017 10:22:17 AM PST    Success
  6. Vérifiez que les composants du répertoire de base de base de données ont été mis à jour à l'aide de la commande component. La colonne Version disponible doit indiquer update-to-date.

Recherche des mises à jour de système d'exploitation disponibles pour les noeuds de système de base de données

Remarque :

  1. Connectez-vous via SSH au système de base de données.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Connectez-vous en tant qu'utilisateur opc, puis passez à l'utilisateur root à l'aide de la commande sudo. Utilisez sudo su - avec un trait d'union pour appeler le profil de l'utilisateur root, qui définira PATH sur le répertoire dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Utilisez la commande get-availableospatches pour identifier les mises à jour à appliquer au système d'exploitation. Si le champ rebootIsRequired a la valeur "true", vous devez redémarrer le système de base de données une fois la mise à jour appliquée.

    dbcli get-availableospatches

    Sortie :

    Update Available     Reboot Required
    -------------------- --------------------
    Yes                  Yes

    Pour obtenir la sortie au format JSON, utilisez la commande suivante.

    dbcli get-availableospatches -j

    Sortie :

    {
    "updateAvailable" : true,
    "rebootIsRequired" : true,
    "updateableRpms" : [ "curl.x86_64::7.29.0-59.0.1.el7_9.1", "freetype.x86_64::2.8-14.el7_9.1",
        "kernel-devel.x86_64::3.10.0-1160.11.1.el7", "kernel-headers.x86_64::3.10.0-1160.11.1.el7",
        "kernel-uek.x86_64::4.1.12-124.45.6.el7uek", "kernel-uek-firmware.noarch::4.1.12-124.45.6.el7uek",
        "libX11.x86_64::1.6.7-3.el7_9", "libX11-common.noarch::1.6.7-3.el7_9",
        "libcurl.x86_64::7.29.0-59.0.1.el7_9.1", "libsmbclient.x86_64::4.10.16-9.el7_9",
        "libwbclient.x86_64::4.10.16-9.el7_9", "python.x86_64::2.7.5-90.0.1.el7",
        "python-libs.x86_64::2.7.5-90.0.1.el7", "samba-client-libs.x86_64::4.10.16-9.el7_9",
        "samba-common.noarch::4.10.16-9.el7_9", "samba-common-libs.x86_64::4.10.16-9.el7_9",
        "sudo.x86_64::1.8.23-10.el7_9.1" ],
    "installedRpms" : [ "curl.x86_64::7.29.0-59.0.1.el7", "freetype.x86_64::2.8-14.el7",
        "kernel-devel.x86_64::3.10.0-1160.2.2.el7", "kernel-headers.x86_64::3.10.0-1160.2.2.el7",
        "kernel-uek.x86_64::4.1.12-124.43.4.el7uek", "kernel-uek-firmware.noarch::4.1.12-124.43.4.el7uek",
        "libX11.x86_64::1.6.7-2.el7", "libX11-common.noarch::1.6.7-2.el7",
        "libcurl.x86_64::7.29.0-59.0.1.el7", "libsmbclient.x86_64::4.10.16-7.el7_9",
        "libwbclient.x86_64::4.10.16-7.el7_9", "python.x86_64::2.7.5-89.0.1.el7",
        "python-libs.x86_64::2.7.5-89.0.1.el7", "samba-client-libs.x86_64::4.10.16-7.el7_9",
        "samba-common.noarch::4.10.16-7.el7_9", "samba-common-libs.x86_64::4.10.16-7.el7_9",
        "sudo.x86_64::1.8.23-10.el7" ]
    }

Mise à jour du système d'exploitation d'un noeud de système de base de données

Cette rubrique explique comment utiliser dbcli pour exécuter une prévérification, puis comment appliquer une mise à jour au système d'exploitation exécuté sur un noeud de système de base de données.

Remarque : certaines opérations d'actualisation du système d'exploitation nécessitent un redémarrage une fois la mise à jour terminée. Utilisez la commande dbcli get-availableospatches comme décrit dans la rubrique précédente pour déterminer si la mise à jour que vous appliquez nécessite un redémarrage.

Procédez comme suit pour mettre à jour le système d'exploitation d'un noeud de système de base de données.

  1. Connectez-vous via SSH au système de base de données.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Connectez-vous en tant qu'utilisateur opc, puis passez à l'utilisateur root à l'aide de la commande sudo. Utilisez sudo su - avec un trait d'union pour appeler le profil de l'utilisateur root, qui définira PATH sur le répertoire dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Utilisez la commande update-server -c os -p pour exécuter une prévérification :

    dbcli update-server -c os -p

    Sortie :

    {
      "jobId" : "7fc5cadd-d256-436a-be0d-c2bfe9fd4e95",
      "status" : "Created",
      "message" : null,
      "reports" : [ ],
      "createTimestamp" : "March 01, 2021 07:36:19 AM UTC",
      "resourceList" : [ ],
      "description" : "OS Patching Prechecks",
      "updatedTime" : "March 01, 2021 07:36:20 AM UTC",
      "percentageProgress" : "0%"
    }
  4. Si la prévérification réussit et ne révèle aucun problème empêchant le succès de l'opération de mise à jour, vous pouvez mettre à jour le système d'exploitation. Si elle échoue, résolvez les problèmes qu'elle a identifiés avant d'essayer de mettre à jour le système d'exploitation.

    Remarque : vous pouvez utiliser l'indicateur -l (--local) pour mettre à jour les composants de serveur uniquement dans le noeud en cours.

    Pour mettre à jour le système d'exploitation, utilisez la commande dbcli update-server -c os :

    dbcli update-server -c os

    Sortie :

    {
      "jobId" : "bee1c6d9-45fb-4e5b-8ee8-f02e7cd192ab",
      "status" : "Created",
      "message" : null,
      "reports" : [ ],
      "createTimestamp" : "March 01, 2021 07:37:43 AM UTC",
      "resourceList" : [ ],
      "description" : "OS Patching",
      "updatedTime" : "March 01, 2021 07:37:43 AM UTC",
      "percentageProgress" : "0%"
     }
  5. Si la mise à jour du système d'exploitation nécessite un redémarrage, redémarrez le serveur une fois l'opération de mise à jour terminée.