Neste post demonstro como criar um novo DB Home em um DB System OCI, utilizando o dbcli. O procedimento pode ser utilizado para clonar o DB Home no mesmo ambiente, ou levá-lo para outro DB System (demonstrado neste post).

No DB System de origem, veja se já existe um DB Home compactado no diretório padrão utilizado pelo dbcli:

# ls -l /opt/oracle/oak/pkgrepos/orapkgs/clones/
total 6781164
-rw-r--r-- 1 root root 6943905979 Feb 19 11:10 db121.210119.tar.gz

Caso não exista um DB Home previamente compactado nesse diretório ou caso o diretório não exista, pode criá-lo manualmente:

# mkdir -p /opt/oracle/oak/pkgrepos/orapkgs/clones/
# cd /u01/app/oracle/product/12.1.0.2/dbhome_1/
# tar -czf /opt/oracle/oak/pkgrepos/orapkgs/clones/db121.210119.tar.gz .

Sobre o padrão da nomeclatura do arquivo:

db = Database
121 = Versão 12cR1
210119 = Data de lançamento de Release Update (pode ser consultado com $ORACLE_HOME/OPatch/opatch lspatches)

Feito isso, já podemos clonar o DB Home neste mesmo DB System, mas eu irei copiar esse arquivo para um outro DB System.

No DB System de destino, crie o diretório padrão, caso ele ainda não exista:

# mkdir -p /opt/oracle/oak/pkgrepos/orapkgs/clones/

Copie o DB Home .tar.gz do DB System de Origem para o Destino utilizando qualquer método disponível no seu cenário, aqui estou utilizando um NFS compartilhado entre os 2 servidores.

Na Origem:

# cp /opt/oracle/oak/pkgrepos/orapkgs/clones/db121.210119.tar.gz /nfs_temp/

No Destino, copiando o arquivo do NFS para o local padrão utilizado pelo dbcli:

# cp /nfs_temp/db121.210119.tar.gz /opt/oracle/oak/pkgrepos/orapkgs/clones/

Criando um novo DB Home via dbcli:

# dbcli create-dbhome --version 12.1.0.2.210119

Job details
----------------------------------------------------------------
                     ID:  d8aa0d14-5b6e-4e32-9066-7f2aebbd1378
            Description:  Database Home creation with Id : 4ff3d010-c1df-4d7a-98a7-24475c71e9cb
                 Status:  Created
                Created:  June 7, 2021 6:25:40 PM BRT
               Progress:  0%
                Message:  Create Database Home

Task Name                                                                Start Time                          End Time                            Status
------------------------------------------------------------------------ ----------------------------------- ----------------------------------- ----------

Monitorando o progresso:

# dbcli describe-job -i d8aa0d14-5b6e-4e32-9066-7f2aebbd1378

Job details
----------------------------------------------------------------
                     ID:  d8aa0d14-5b6e-4e32-9066-7f2aebbd1378
            Description:  Database Home creation with Id : 4ff3d010-c1df-4d7a-98a7-24475c71e9cb
                 Status:  Running
                Created:  June 7, 2021 6:25:40 PM BRT
               Progress:  94%
                Message:  Create Database Home

Task Name                                                                Start Time                          End Time                            Status
------------------------------------------------------------------------ ----------------------------------- ----------------------------------- ----------
Database home creation                                                   June 7, 2021 6:25:41 PM BRT         June 7, 2021 6:25:41 PM BRT         Running

Tendo concluído, temos agora um DB Home adicional no DB System:

# dbcli list-dbhomes

ID                                       Name                 DB Version                               Home Location                                 Status
---------------------------------------- -------------------- ---------------------------------------- --------------------------------------------- ----------
4fbb3f07-b109-4005-a5d3-fe6dfa3826f4     OraDB12102_home1     12.1.0.2.210119                          /u01/app/oracle/product/12.1.0.2/dbhome_1     Configured
4ff3d010-c1df-4d7a-98a7-24475c71e9cb     OraDB12102_home3     12.1.0.2.210119                          /u01/app/oracle/product/12.1.0.2/dbhome_3     Configured

Neste exemplo fiquei com 2 DB Homes da mesma versão, mas o DB Home adicionado tem alguns Interim Patches a mais que eu queria testar antes de aplicar no DB Home primário do DB System.

Esse procedimento pode ser utilizado para instalar um DB Home de uma versão diferente.

O novo DB Home não é reconhecido pela console OCI (VM DB System).

Manter o banco de dados rodando nesse novo DB Home pode não ser suportado pela Oracle, mas pode ser útil para cenários de testes ou em casos temporários durante a execução de algum projeto de migração.

Leave a Reply

Discover more from Blog do Dibiei

Subscribe now to keep reading and get access to the full archive.

Continue reading