E ai pessoal, tudo bem? Nesse artigo, gostaria de aproveitar para compartilhar por aqui um laboratório que fiz recentemente da conversão de um banco single instance para um Rac One Node através do DBCA.
Para esse laboratório vou usar um banco orcl19r que está em RAC dividido nos nós orcl19r1 e orcl19r2
[oracle@ol7-rac01 ~]$ srvctl status database -d orcl19rInstance orcl19r1 is running on node ol7-rac01Instance orcl19r2 is running on node ol7-rac02[oracle@ol7-rac01 ~]$
E também criei um outro banco em single instance chamado de orcl
SQL> SELECT NAME,OPEN_MODE from v$database;NAME OPEN_MODE--------- --------------------ORCL READ WRITE
Agora para começar precisamos gerar os templates do nosso banco single instance, para isso, vou começar iniciando o dbca no banco ORCL e realizando os seguintes passos
Selecionar o Manage templates

Na próxima página vou criar um template com o nome de orcl_convert e marcarei para ele o diretório /home/oracle

Na próxima etapa irei colocar para criar o template com base no banco de dados existente (ORCL), incluindo data files e deixarei como usuário sys

Depois colocar a localização dos arquivos para usar a estrutura do Optimal Flexible Architecture (OFA)

Após clicar em “next”, irei enviar os arquivos de template para o primeiro nó através do scp
[oracle@ol7-adm ~]$ ls[main.log Linux.X64_193000_db_home.zip orcl_convert.ctl orcl_convert.dbc orcl_convert.dbf1 orcl_convert.dbf2 orcl_convert.dbf3[oracle@ol7-adm ~]$ scp orcl_convert.* 192.168.15.40:/home/oracleThe authenticity of host '192.168.15.40 (192.168.15.40)' can't be established.ECDSA key fingerprint is SHA256:GcJG8VYxVNsGafJWLQ79IiBeAxbCesz6eXTI Iz0n8+w.ECDSA key fingerprint is MD5:4a:c5:b1:5f:01:43:cc:96:f2:f7:ea:5f:5b:e7:18:88.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '192.168.15.40' (ECDSA) to the list of known hosts.oracle@192.168.15.40's password:orcl_convert.ctl 100% 18MB 95.0MB/s 00:00orcl_convert.dbc 100% 6940 6.4MB/s 00:00orcl_convert.dbf1orcl_convert.dbf2orcl_convert.dbf3[oracle@ol7-adm ~]$
Ao executar o dbca agora no nosso nó orcl19r1 vamos realizar os seguintes passos:
Create database

Advanced configuration

Nessa próxima parte vou selecionar no Database type o a opção de One Node database e incluir o template orcl_convert que está localizado no /home/oracle

Após isso os 2 nós já estão selecionados então já posso continuar o procedimento

Vou especificar os nomes para o banco

Habilitando o ASM e o OMF

Especificaremos o valor da fast recovery area

Próxima parte que vamos configurar é a nossa memória do SGA e PGA

Após isso podemos finalizar sem nenhuma configuração extra e validar o que o RMAN está executando através do alert_log que aparecerá no diretório do dbca
[RMANEngine.readSqlOutput:997] Log RMAN Output=executing command: SET NEWNAME[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=Starting restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=using channel ORA_DISK_1[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: starting datafile backup set restore[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: specifying datafile(s) to restore from backup set[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restoring datafile 00011 to +DATA[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: reading from backup piece /home/oracle/orcl_convert.dbf2[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: piece handle=/home/oracle/orcl_convert.dbf2 tag=TAG20240523T235201[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restored backup piece 1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restore complete, elapsed time: 00:00:07[RMANEngine.readSqlOutput:997] Log RMAN Output=Finished restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=Starting restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=using channel ORA_DISK_1[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: starting datafile backup set restore[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: specifying datafile(s) to restore from backup set[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restoring datafile 00001 to +DATA[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: reading from backup piece /home/oracle/orcl_convert.dbf1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: piece handle=/home/oracle/orcl_convert.dbf1 tag=TAG20240523T235201[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restored backup piece 1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restore complete, elapsed time: 00:00:55[RMANEngine.readSqlOutput:997] Log RMAN Output=Finished restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=Starting restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=using channel ORA_DISK_1[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: starting datafile backup set restore[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: specifying datafile(s) to restore from backup set[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restoring datafile 00012 to +DATA[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: reading from backup piece /home/oracle/orcl_convert.dbf2[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: piece handle=/home/oracle/orcl_convert.dbf2 tag=TAG20240523T235201[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restored backup piece 1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restore complete, elapsed time: 00:00:01[RMANEngine.readSqlOutput:997] Log RMAN Output=Finished restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=Starting restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=using channel ORA_DISK_1[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: starting datafile backup set restore[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: specifying datafile(s) to restore from backup set[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restoring datafile 00003 to +DATA[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: reading from backup piece /home/oracle/orcl_convert.dbf1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: piece handle=/home/oracle/orcl_convert.dbf1 tag=TAG20240523T235201[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restored backup piece 1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restore complete, elapsed time: 00:00:35[RMANEngine.readSqlOutput:997] Log RMAN Output=Finished restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=Starting restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=using channel ORA_DISK_1[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: starting datafile backup set restore[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: specifying datafile(s) to restore from backup set[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restoring datafile 00004 to +DATA[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: reading from backup piece /home/oracle/orcl_convert.dbf1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: piece handle=/home/oracle/orcl_convert.dbf1 tag=TAG20240523T235201[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restored backup piece 1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restore complete, elapsed time: 00:00:25[RMANEngine.readSqlOutput:997] Log RMAN Output=Finished restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=Starting restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=using channel ORA_DISK_1[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: starting datafile backup set restore[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: specifying datafile(s) to restore from backup set[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restoring datafile 00005 to +DATA[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: reading from backup piece /home/oracle/orcl_convert.dbf3[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: piece handle=/home/oracle/orcl_convert.dbf3 tag=TAG20240523T235201[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restored backup piece 1[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restore complete, elapsed time: 00:00:25[RMANEngine.readSqlOutput:997] Log RMAN Output=Finished restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=Starting restore at 23-MAY-24[RMANEngine.readSqlOutput:997] Log RMAN Output=using channel ORA_DISK_1[RMANEngine.readSqlOutput:997] Log RMAN Output=[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: starting datafile backup set restore[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: specifying datafile(s) to restore from backup set[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: restoring datafile 00006 to +DATA[RMANEngine.readSqlOutput:997] Log RMAN Output=channel ORA_DISK_1: reading from backup piece /home/oracle/orcl_convert.dbf3
Ao finalizar, já é possível acessarmos o banco
[oracle@ol7-rac01 ~]$ ps -ef | grep pmonoracle 3055 1 0 14:32 ? 00:00:01 asm_pmon_+ASM1oracle 5428 1 0 14:33 ? 00:00:02 ora_pmon_orcl19r1oracle 11874 1 0 23:36 ? 00:00:00 ora_pmon_orcl_1oracle 21662 26164 0 23:53 pts/2 00:00:00 grep --color=auto pmon[oracle@ol7-rac01 ~]$ oraenvORACLE_SID = [orcl1] ? orcl19r1The Oracle base remains unchanged with value /u01/app/oracle[oracle@ol7-rac01 ~]$ ps -ef | grep pmonoracle 3055 1 0 14:32 ? 00:00:01 asm_pmon_+ASM1oracle 5428 1 0 14:33 ? 00:00:02 ora_pmon_orcl19r1oracle 11874 1 0 23:36 ? 00:00:00 ora_pmon_orcl_1oracle 21773 26164 0 23:53 pts/2 00:00:00 grep --color=auto pmon[oracle@ol7-rac01 ~]$ oraenvORACLE_SID = [orcl19r1] ? orcl1ORACLE_HOME = [/home/oracle] ? /u01/app/oracle/product/19.3.0/dbhome_1The Oracle base remains unchanged with value /u01/app/oracle[oracle@ol7-rac01 ~]$ sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Thu May 23 23:54:19 2024Version 19.3.0.0.0Copyright (c) 1982, 2019, Oracle. All rights reserved.Connected to:Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - ProductionVersion 19.3.0.0.0SQL> show parameter db_nameNAME TYPE VALUE------------------------------------ ----------- ------------------------------db_name string orcl1