Atualizar os Recursos do Sistema de Banco de Dados Usando o dbcli

Você pode usar o utilitário dbcli para atualizar os recursos do sistema de Banco de Dados. Isso inclui a atualização do sistema de banco de dados, o SO (sistema operacional) nos nós dentro do sistema de banco de dados e Homes de Banco de Dados.

Para obter mais informações sobre comandos dbcli, consulte Referência de CLI do Oracle Database.

Pré-requisitos

  1. Preparação para uma atualização do sistema operacional.

    Antes de atualizar o sistema operacional, verifique as seguintes diretrizes e informações importantes:

    • Faça backup do banco de dados no sistema de banco de dados antes de tentar uma atualização do sistema operacional.
    • Não remova pacotes de um sistema de banco de dados. No entanto, talvez você tenha que remover RPMs (pacotes que foram instalados depois que o sistema foi provisionado) personalizados para que a atualização seja concluída com êxito.
    • A Oracle recomenda que você teste todas as atualizações por completo em um sistema de não produção antes de atualizar um sistema de produção.
    • A imagem usada para iniciar um sistema de banco de dados é atualizada regularmente, com as atualizações necessárias. Depois de iniciar um sistema de banco de dados, você é responsável por aplicar as atualizações de segurança necessárias do sistema operacional, publicadas por meio do servidor YUM público da Oracle.
    • Para aplicar atualizações do sistema operacional, a VCN (rede virtual na nuvem) no sistema de banco de dados deve ser configurada para permitir acesso ao repositório YUM. Para obter mais informações, consulte VCN e Sub-redes.
  2. Requisitos para usar SSH para estabelecer conexão com um sistema de banco de dados.

    Para estabelecer conexão com o sistema de banco de dados via SSH, você precisará do caminho para a chave privada associada à chave pública usada quando o sistema de banco de dados foi iniciado.

    Você também precisará do endereço IP público ou privado do sistema de banco de dados.

    Use o endereço IP privado para conexão com o sistema de sua rede local ou de dentro da VCN. Isso inclui a conexão de um host localizado on-premises, estabelecendo conexão por meio de uma VPN ou do FastConnect com a sua VCN ou de outro host na mesma VCN. Use o endereço IP público do sistema de banco de dados para estabelecer conexão com o sistema fora da nuvem (sem VPN). É possível encontrar os endereços IP na Console da seguinte forma:

    1. Na página Detalhes do Sistema de BD, em Recursos, clique em Nós.
    2. Exiba os valores que são exibidos nas colunas Endereço IP público e Endereço IP privado & nome DNS da tabela exibindo os Nós do sistema de Banco de Dados.

Verificar Atualizações Instaladas e Disponíveis

Execute as etapas a seguir para verificar se há atualizações instaladas e disponíveis.

  1. Estabeleça conexão via SSH com o sistema de banco de dados.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Faça log-in como opc e, em seguida, sudo para o usuário root. Use sudo su - com um hífen para chamar o perfil do usuário root, que definirá o PATH como o diretório dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Exiba as versões de atualização instaladas usando o Comando Component. Se a coluna Versão Disponível indicar um número de versão para um componente, você deverá atualizá-lo.

    dbcli describe-component

    Saída:

    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. Exiba as versões de atualização mais recentes disponíveis no Object Storage usando o Comando Latestpatch.

    dbcli describe-latestpatch

    Saída:

    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

Atualizar Componentes do Servidor

Execute as etapas a seguir para atualizar os componentes de servidor do GI (Grid Infrastructure) e do kit de gerenciamento de armazenamento (OAK) .

  1. Estabeleça conexão via SSH com o sistema de banco de dados.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Faça log-in como opc e, em seguida, sudo para o usuário root. Use sudo su - com um hífen para chamar o perfil do usuário root, que definirá o PATH como o diretório dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Atualize os componentes do servidor usando o Comando Server.

    dbcli update-server

    Saída:

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

    Anote a jobId no exemplo anterior.

  4. Verifique a saída do job usando os Comandos Job com o jobId.

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

    Saída:

    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. Verifique se os componentes do servidor foram atualizados com sucesso usando o Comando Component. A coluna Versão Disponível deve indicar update-to-date.

Atualizar Componentes do Home do Banco de Dados

Execute as etapas a seguir para atualizar os componentes do Home do Banco de Dados.

  1. Estabeleça conexão via SSH com o sistema de banco de dados.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Faça log-in como opc e, em seguida, sudo para o usuário root. Utilize sudo su - com um hífen para chamar o perfil do usuário root, que definirá o PATH para o diretório dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Obtenha o ID do Home do Banco de Dados usando os Comandos Dbhome.

    dbcli list-dbhomes

    Saída:

    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. Atualize os componentes do Home do Banco de Dados usando os Comandos Dbhome e fornecendo o ID da etapa anterior.

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

    Saída:

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

    Anote a jobId no exemplo anterior.

  5. Verifique a saída do job usando os Comandos Job com o jobId.

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

    Saída:

    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. Verifique se os componentes do Home do Banco de Dados foram atualizados com sucesso usando o Comando Component. A coluna Versão Disponível deve indicar update-to-date.

Verificar se há Atualizações do Sistema Operacional Disponíveis para Nós do Sistema de Banco de Dados

Observação:

  1. Estabeleça conexão via SSH com o sistema de banco de dados.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Faça log-in como opc e, em seguida, sudo para o usuário root. Use sudo su - com um hífen para chamar o perfil do usuário raiz, que definirá o PATH como o diretório dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Use o comando get-availableospatches para identificar as atualizações que deseja aplicar ao sistema operacional. Observe que se o campo rebootIsRequired for "verdadeiro", você deverá reinicializar o sistema de banco de dados após aplicar a atualização.

    dbcli get-availableospatches

    Saída:

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

    Para obter a saída em JSON, use o comando a seguir.

    dbcli get-availableospatches -j

    Saída:

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

Atualizar o Sistema Operacional de um Nó do Sistema de Banco de Dados

Este tópico explica como usar o dbcli para executar uma pré-verificação e, em seguida, aplicar uma atualização ao sistema operacional em execução em um nó do sistema de banco de dados.

Observação: algumas operações da atualização do sistema operacional exigem uma reinicialização após a conclusão da atualização. Use o comando dbcli get-availableospatches conforme descrito no tópico anterior para determinar se a atualização que você está aplicando requer uma reinicialização.

Execute as etapas a seguir para atualizar o sistema operacional de um nó do sistema de banco de dados.

  1. Estabeleça conexão via SSH com o sistema de banco de dados.

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. Faça log-in como opc e, em seguida, sudo para o usuário root. Use sudo su - com um hífen para chamar o perfil do usuário raiz, que definirá o PATH como o diretório dbcli (/opt/oracle/dcs/bin).

    sudo su -
  3. Use o comando update-server -c os -p para executar uma pré-verificação:

    dbcli update-server -c os -p

    Saída:

    {
      "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 a pré-verificação for bem-sucedida e não detectar problemas que impeçam uma operação de atualização com sucesso, você poderá atualizar o sistema operacional. Se a pré-verificação não for bem-sucedida, resolva os problemas identificados por ela antes de tentar atualizar o sistema operacional.

    Observação: você pode usar o flag -l (--local) para atualizar os componentes do servidor somente no nó atual.

    Para atualizar o sistema operacional, use o comando dbcli update-server -c OS:

    dbcli update-server -c os

    Saída:

    {
      "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 a atualização do sistema operacional exigir uma reinicialização, reinicialize o servidor após a operação de atualização ser concluída.