Aggiornare le risorse del sistema DB utilizzando dbcli

È possibile utilizzare la utility dbcli per aggiornare le risorse del sistema DB. Ciò include l'aggiornamento del sistema DB, del sistema operativo sui nodi all'interno del sistema DB e delle home del database.

Per ulteriori informazioni sui comandi dbcli, vedere Oracle Database CLI Reference.

Prerequisiti

  1. Preparazione per un aggiornamento del sistema operativo.

    Prima di aggiornare il sistema operativo, consultare le linee guida e le informazioni importanti riportate di seguito.

    • Eseguire il backup del database nel sistema DB prima di tentare un aggiornamento del sistema operativo.
    • Non rimuovere i pacchetti da un sistema DB. Tuttavia, potrebbe essere necessario rimuovere gli RPM personalizzati (pacchetti installati dopo il provisioning del sistema) per il completamento dell'aggiornamento.
    • Oracle consiglia di eseguire un test accurato degli aggiornamenti su un sistema non di produzione prima di aggiornare un sistema di produzione.
    • L'immagine utilizzata per avviare un sistema DB viene aggiornata regolarmente con gli aggiornamenti necessari. Dopo aver avviato un sistema DB, sei responsabile dell'applicazione degli aggiornamenti di sicurezza del sistema operativo necessari pubblicati tramite il server Oracle YUM pubblico.
    • Per applicare gli aggiornamenti del sistema operativo, è necessario configurare la rete cloud virtuale (VCN) nel sistema DB per consentire l'accesso al repository YUM. Per ulteriori informazioni, vedere VCN e subnet.
  2. Requisiti per l'utilizzo di SSH per la connessione a un sistema DB.

    Per connettersi al sistema DB tramite SSH, è necessario il percorso alla chiave privata associata alla chiave pubblica utilizzata al momento dell'avvio del sistema DB.

    Hai anche bisogno dell'indirizzo IP pubblico o privato del sistema DB.

    Utilizza l'indirizzo IP privato per connetterti al sistema dalla tua rete on premise o dalla VCN. Ciò include la connessione da un host situato in locale che si connette tramite una VPN o FastConnect alla tua VCN o da un altro host nella stessa VCN. Utilizza l'indirizzo IP pubblico del sistema DB per connetterti al sistema dall'esterno del cloud (senza VPN). È possibile trovare gli indirizzi IP nella console come indicato di seguito.

    1. Nella pagina Dettagli sistema DB, in Risorse, fare clic su Nodi.
    2. Visualizzare i valori visualizzati nelle colonne Indirizzo IP pubblico e Indirizzo IP privato e nome DNS della tabella che visualizzano i nodi del sistema DB.

Controlla aggiornamenti installati e disponibili

Eseguire la procedura riportata di seguito per verificare la presenza di aggiornamenti installati e disponibili.

  1. SSH al sistema DB.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Eseguire il login come opc e quindi sudo all'utente root. Usare sudo su - con un trattino per richiamare il profilo dell'utente root, che imposterà PATH nella directory dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Visualizzare le versioni di aggiornamento installate utilizzando il comando componente. Se la colonna Versione disponibile indica un numero di versione per un componente, è necessario aggiornare il componente.

    dbcli describe-component

    Output:

    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. Visualizzare le versioni di aggiornamento più recenti disponibili nello storage degli oggetti utilizzando il comando Latestpatch.

    dbcli describe-latestpatch

    Output:

    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

Aggiorna componenti server

Eseguire i passi riportati di seguito per aggiornare i componenti server di Grid Infrastructure (GI) e del kit di gestione dello storage (OAK).

  1. SSH al sistema DB.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Eseguire il login come opc e quindi sudo all'utente root. Usare sudo su - con un trattino per richiamare il profilo dell'utente root, che imposterà PATH nella directory dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Aggiornare i componenti del server utilizzando il comando server.

    dbcli update-server

    Output:

    {
      "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"
    }

    Prendere nota di jobId nell'esempio precedente.

  4. Controllare l'output del job utilizzando i comandi job con jobId.

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

    Output:

    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. Verificare che i componenti del server siano stati aggiornati correttamente utilizzando il comando componente. La colonna Versione disponibile deve indicare update-to-date.

Aggiorna componenti home database

Eseguire i passi riportati di seguito per aggiornare i componenti della home del database.

  1. SSH al sistema DB.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Eseguire il login come opc e quindi sudo all'utente root. Usare sudo su - con un trattino per richiamare il profilo dell'utente root, che imposterà PATH sulla directory dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Ottenere il file ID della home del database utilizzando i comandi Dbhome.

    dbcli list-dbhomes

    Output:

    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. Aggiornare i componenti della home del database utilizzando i comandi Dbhome e fornendo il comando ID del passo precedente.

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

    Output:

    {
      "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"
    }

    Prendere nota di jobId nell'esempio precedente.

  5. Controllare l'output del job utilizzando i comandi job con jobId.

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

    Output:

    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. Verificare che i componenti della home del database siano stati aggiornati correttamente utilizzando il comando componente. La colonna Versione disponibile deve indicare update-to-date.

Controlla aggiornamenti del sistema operativo disponibili per i nodi del sistema DB

Nota:

  1. SSH al sistema DB.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Eseguire il login come opc e quindi sudo all'utente root. Usare sudo su - con un trattino per richiamare il profilo dell'utente root, che imposterà PATH nella directory dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Utilizzare il comando get-availableospatches per identificare gli aggiornamenti che si desidera applicare al sistema operativo. Tenere presente che se il campo rebootIsRequired è "true", è necessario eseguire il reboot del sistema DB dopo aver applicato l'aggiornamento.

    dbcli get-availableospatches

    Output:

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

    Per ottenere l'output in JSON, utilizzare il comando seguente.

    dbcli get-availableospatches -j

    Output:

    {
    "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" ]
    }

Aggiorna il sistema operativo di un nodo del sistema DB

Questo argomento spiega come utilizzare dbcli per eseguire un controllo preliminare e quindi applicare un aggiornamento al sistema operativo in esecuzione su un nodo del sistema DB.

Nota: alcune operazioni di aggiornamento del sistema operativo richiedono un riavvio dopo il completamento dell'aggiornamento. Usare il comando dbcli get-availableospatches come descritto nell'argomento precedente per determinare se l'aggiornamento da applicare richiede un reboot.

Eseguire i passi riportati di seguito per aggiornare il sistema operativo di un nodo di sistema DB.

  1. SSH al sistema DB.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Eseguire il login come opc e quindi sudo all'utente root. Usare sudo su - con un trattino per richiamare il profilo dell'utente root, che imposterà PATH nella directory dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Utilizzare il comando update-server -c os -p per eseguire un controllo preliminare:

    dbcli update-server -c os -p

    Output:

    {
      "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. Se il controllo preliminare ha esito positivo e non rileva problemi che impediscono un'operazione di aggiornamento riuscita, è possibile aggiornare il sistema operativo. Se il controllo preliminare non riesce, risolvere i problemi identificati dal controllo preliminare prima di provare ad aggiornare il sistema operativo.

    Nota: è possibile utilizzare il flag -l (--local) per aggiornare i componenti del server solo nel nodo corrente.

    Per aggiornare il sistema operativo, utilizzare il comando dbcli update-server -c os:

    dbcli update-server -c os

    Output:

    {
      "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. Se l'aggiornamento del sistema operativo richiede un reboot, riavviare il server al termine dell'operazione di aggiornamento.