{"id":2988,"date":"2026-09-19T18:06:11","date_gmt":"2026-09-19T21:06:11","guid":{"rendered":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/"},"modified":"2026-09-19T18:06:11","modified_gmt":"2026-09-19T21:06:11","slug":"aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili","status":"publish","type":"post","link":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/","title":{"rendered":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade"},"content":{"rendered":"<p>Chegamos \u00e0 aula final do curso <strong>Oracle SQL \u2014 Do Zero ao Avan\u00e7ado<\/strong>, e o tema n\u00e3o poderia ser mais relevante: <strong>Oracle em produ\u00e7\u00e3o<\/strong>. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas de hardware, manuten\u00e7\u00e3o programada ou at\u00e9 desastres no datacenter. Nesta aula, voc\u00ea vai aprender os pilares de alta disponibilidade do Oracle: <strong>RAC (Real Application Clusters)<\/strong> e <strong>Data Guard<\/strong>, al\u00e9m de pr\u00e1ticas essenciais para operar, monitorar e diagnosticar um <strong>Oracle em produ\u00e7\u00e3o<\/strong> com seguran\u00e7a e previsibilidade.<\/p>\n<p>Ao longo desta aula, vamos entender por que simplesmente instalar uma inst\u00e2ncia Oracle em um \u00fanico servidor n\u00e3o \u00e9 suficiente para ambientes cr\u00edticos. Vamos explorar a arquitetura de <strong>RAC<\/strong>, que permite que v\u00e1rias inst\u00e2ncias compartilhem o mesmo banco f\u00edsico, e o <strong>Data Guard<\/strong>, que mant\u00e9m c\u00f3pias de conting\u00eancia sincronizadas em tempo real ou quase real. Voc\u00ea ver\u00e1 comandos reais de configura\u00e7\u00e3o, arquivos de par\u00e2metros completos, verifica\u00e7\u00f5es de sa\u00fade do cluster e testes de switchover\/failover. Nosso objetivo \u00e9 que, ao final desta aula, voc\u00ea consiga planejar, configurar e validar uma solu\u00e7\u00e3o de alta disponibilidade <strong>Oracle em produ\u00e7\u00e3o<\/strong> do zero, executando cada passo em um ambiente de laborat\u00f3rio.<\/p>\n<p>Esta aula \u00e9 avan\u00e7ada e exige que voc\u00ea tenha conclu\u00eddo as aulas anteriores, especialmente as que tratam de instala\u00e7\u00e3o do Oracle Database, listener, tnsnames, arquivos de controle, redo logs e RMAN. Voc\u00ea tamb\u00e9m precisar\u00e1 de acesso a dois servidores Linux (f\u00edsicos ou virtuais) para construir o cen\u00e1rio de Data Guard. Em nossos projetos na <strong>JRT Technology Solutions<\/strong>, nossos especialistas utilizam diariamente exatamente os procedimentos que voc\u00ea ver\u00e1 aqui, porque alta disponibilidade n\u00e3o \u00e9 um luxo, \u00e9 uma necessidade de neg\u00f3cio em bancos que suportam sistemas de miss\u00e3o cr\u00edtica, ERPs e ambientes de seguran\u00e7a da informa\u00e7\u00e3o.<\/p>\n<p>Prepare-se para uma aula densa, mas extremamente pr\u00e1tica. Vamos come\u00e7ar entendendo a arquitetura e, em seguida, executar a configura\u00e7\u00e3o completa de um <strong>Data Guard f\u00edsico<\/strong> com base ativa, al\u00e9m de verificar um cluster <strong>RAC<\/strong> j\u00e1 provisionado. Se voc\u00ea seguir os passos exatamente como descritos, ter\u00e1 ao final um ambiente funcional e os conhecimentos necess\u00e1rios para operar <strong>Oracle em produ\u00e7\u00e3o<\/strong> com confian\u00e7a. Ao final, voc\u00ea encontrar\u00e1 uma se\u00e7\u00e3o de erros comuns, dicas avan\u00e7adas e o encerramento completo do curso.<\/p>\n<h3>O que voc\u00ea vai aprender nesta aula<\/h3>\n<ul>\n<li>Compreender a arquitetura de <strong>alta disponibilidade<\/strong> no Oracle e as diferen\u00e7as entre <strong>RAC<\/strong>, <strong>Data Guard<\/strong> e <strong>GoldenGate<\/strong>.<\/li>\n<li>Identificar os componentes cr\u00edticos do <strong>RAC<\/strong>: <strong>Oracle Clusterware<\/strong>, <strong>OCR<\/strong>, <strong>Voting Disk<\/strong>, <strong>ASM<\/strong> e <strong>SCAN<\/strong>.<\/li>\n<li>Configurar um ambiente <strong>Data Guard f\u00edsico<\/strong> completo, do zero, usando <strong>RMAN DUPLICATE FROM ACTIVE DATABASE<\/strong>.<\/li>\n<li>Preparar o banco prim\u00e1rio com <strong>force logging<\/strong>, <strong>standby redo logs<\/strong> e par\u00e2metros de envio de archivelogs.<\/li>\n<li>Criar e editar arquivos <strong>tnsnames.ora<\/strong>, <strong>listener.ora<\/strong> e <strong>init.ora<\/strong>\/<strong>spfile<\/strong> para suportar o Data Guard.<\/li>\n<li>Verificar o funcionamento do transporte e da aplica\u00e7\u00e3o de logs no standby usando SQL*Plus e <strong>DGMGRL<\/strong>.<\/li>\n<li>Testar <strong>switchover<\/strong> e <strong>failover<\/strong> com seguran\u00e7a em um ambiente de testes.<\/li>\n<li>Diagnosticar erros comuns de rede, par\u00e2metros e permiss\u00f5es em ambientes <strong>Oracle em produ\u00e7\u00e3o<\/strong>.<\/li>\n<\/ul>\n<h3>Pr\u00e9-requisitos e Ambiente<\/h3>\n<p>Antes de iniciar esta aula, voc\u00ea precisa ter um ambiente m\u00ednimo preparado. Recomendamos duas m\u00e1quinas virtuais com <strong>Oracle Linux 8<\/strong> ou <strong>Ubuntu Server 22.04<\/strong>, cada uma com pelo menos <strong>4 vCPUs<\/strong>, <strong>8 GB de RAM<\/strong> e <strong>40 GB de disco<\/strong>. \u00c9 fundamental que as duas m\u00e1quinas consigam se comunicar pela rede e que o firewall esteja configurado para liberar as portas <strong>1521<\/strong> (listener) e <strong>1522<\/strong> (se usar listener dedicado ao standby). Voc\u00ea tamb\u00e9m precisar\u00e1 do Oracle Database instalado e com um banco de dados criado em uma das m\u00e1quinas, que ser\u00e1 o <strong>prim\u00e1rio<\/strong>. A outra m\u00e1quina ter\u00e1 apenas o software Oracle instalado, sem banco, para receber o <strong>standby<\/strong>.<\/p>\n<p>Al\u00e9m do software, voc\u00ea deve garantir que os comandos <strong>sqlplus<\/strong>, <strong>rman<\/strong>, <strong>srvctl<\/strong>, <strong>crsctl<\/strong> e <strong>dgmgrl<\/strong> estejam no PATH do usu\u00e1rio <strong>oracle<\/strong>. Em nossos projetos na <strong>JRT Technology Solutions<\/strong>, padronizamos o diret\u00f3rio de instala\u00e7\u00e3o do Oracle em <strong>\/u01\/app\/oracle\/product\/19.0.0\/dbhome_1<\/strong> e o reposit\u00f3rio de dados em <strong>\/u01\/oradata<\/strong>. Voc\u00ea pode adaptar os caminhos conforme seu ambiente, mas mantenha consist\u00eancia entre os servidores para evitar confus\u00e3o durante a configura\u00e7\u00e3o. Para o laborat\u00f3rio desta aula, considere os seguintes nomes:<\/p>\n<ul>\n<li><strong>Banco prim\u00e1rio:<\/strong> ORCL_PRI, com inst\u00e2ncia ORCL_PRI, servidor <strong>dbpri<\/strong> (IP 192.168.56.101).<\/li>\n<li><strong>Banco standby:<\/strong> ORCL_STB, com inst\u00e2ncia ORCL_STB, servidor <strong>dbstb<\/strong> (IP 192.168.56.102).<\/li>\n<li><strong>Sistema operacional:<\/strong> Oracle Linux 8 (ou Ubuntu Server 22.04, com pequenas varia\u00e7\u00f5es nos pacotes).<\/li>\n<li><strong>Senha do usu\u00e1rio SYS:<\/strong> <strong>Oracle123<\/strong> (altere em produ\u00e7\u00e3o!).<\/li>\n<\/ul>\n<p>Se voc\u00ea ainda n\u00e3o tem um banco prim\u00e1rio criado, execute um <strong>DBCA<\/strong> simples com o nome <strong>ORCL_PRI<\/strong> antes de continuar. O standby ser\u00e1 criado no decorrer da aula, e n\u00e3o requer banco pr\u00e9-existente. Todos os comandos devem ser executados como usu\u00e1rio <strong>oracle<\/strong>, salvo indica\u00e7\u00e3o contr\u00e1ria para <strong>root<\/strong>. Verifique tamb\u00e9m se o <strong>ASM<\/strong> est\u00e1 dispon\u00edvel ou, se preferir, utilize file system tradicional \u2014 para simplificar o laborat\u00f3rio, vamos usar file system. Em produ\u00e7\u00e3o real, o <strong>ASM<\/strong> \u00e9 altamente recomendado, mas n\u00e3o \u00e9 obrigat\u00f3rio para entender o Data Guard.<\/p>\n<p>Por fim, certifique-se de que o <strong>Oracle Net<\/strong> est\u00e1 funcionando no prim\u00e1rio: o listener deve estar ativo e o <strong>tnsnames.ora<\/strong> deve permitir conex\u00e3o local. Vamos partir do princ\u00edpio de que o banco prim\u00e1rio est\u00e1 em modo <strong>ARCHIVELOG<\/strong>. Se n\u00e3o estiver, rode <strong>SHUTDOWN IMMEDIATE<\/strong>, <strong>STARTUP MOUNT<\/strong>, <strong>ALTER DATABASE ARCHIVELOG<\/strong> e <strong>ALTER DATABASE OPEN<\/strong>. Esse \u00e9 o pr\u00e9-requisito inegoci\u00e1vel para o Data Guard, porque a replica\u00e7\u00e3o \u00e9 baseada em archivelogs.<\/p>\n<h3>Arquitetura de Alta Disponibilidade no Oracle em produ\u00e7\u00e3o<\/h3>\n<p>Quando falamos de <strong>Oracle em produ\u00e7\u00e3o<\/strong>, a alta disponibilidade se baseia em duas abordagens complementares: <strong>escalabilidade horizontal e local<\/strong> com <strong>RAC<\/strong>, e <strong>prote\u00e7\u00e3o contra desastres e conting\u00eancia<\/strong> com <strong>Data Guard<\/strong>. O <strong>RAC<\/strong> permite que m\u00faltiplas inst\u00e2ncias Oracle, rodando em servidores diferentes, acessem simultaneamente o mesmo banco f\u00edsico, armazenado em discos compartilhados. Isso elimina o servidor \u00fanico como ponto de falha dentro do datacenter e permite balanceamento de carga entre as inst\u00e2ncias. J\u00e1 o <strong>Data Guard<\/strong> mant\u00e9m uma ou mais c\u00f3pias independentes do banco em servidores separados, geralmente em outro local geogr\u00e1fico, protegendo contra perda total do site prim\u00e1rio.<\/p>\n<p>Essas tecnologias n\u00e3o s\u00e3o concorrentes: em um ambiente maduro, \u00e9 comum encontrar <strong>RAC<\/strong> no site prim\u00e1rio e <strong>RAC<\/strong> no site de conting\u00eancia, com <strong>Data Guard<\/strong> sincronizando os dois clusters. Esse \u00e9 o desenho que implementamos em grande parte dos clientes da <strong>JRT Technology Solutions<\/strong>. Al\u00e9m disso, existe o <strong>Oracle GoldenGate<\/strong>, que faz replica\u00e7\u00e3o l\u00f3gica heterog\u00eanea, mas seu escopo \u00e9 diferente e n\u00e3o substitui o Data Guard para prote\u00e7\u00e3o f\u00edsica. Para esta aula final, vamos focar nos fundamentos do <strong>RAC<\/strong> e na implementa\u00e7\u00e3o pr\u00e1tica do <strong>Data Guard f\u00edsico<\/strong>, que \u00e9 a solu\u00e7\u00e3o mais adotada em <strong>Oracle em produ\u00e7\u00e3o<\/strong>.<\/p>\n<p>O <strong>RAC<\/strong> depende de um conjunto de componentes chamado <strong>Oracle Clusterware<\/strong>. Esse software gerencia o cluster, monitora a sa\u00fade dos n\u00f3s e coordena o acesso ao armazenamento compartilhado. Dentro do Clusterware, dois arquivos s\u00e3o vitais: o <strong>OCR (Oracle Cluster Registry)<\/strong>, que guarda a configura\u00e7\u00e3o do cluster, e o <strong>Voting Disk<\/strong>, que \u00e9 usado para evitar o efeito <em>split-brain<\/em>, quando os n\u00f3s perdem comunica\u00e7\u00e3o e ambos tentam assumir o controle. O armazenamento compartilhado \u00e9 normalmente gerenciado pelo <strong>ASM (Automatic Storage Management)<\/strong>, um gerenciador de volumes e sistema de arquivos nativo do Oracle. O <strong>SCAN (Single Client Access Name)<\/strong> simplifica a conex\u00e3o dos clientes, abstraindo a lista de n\u00f3s.<\/p>\n<p>J\u00e1 o <strong>Data Guard<\/strong> trabalha com o conceito de <strong>redo transport<\/strong> e <strong>redo apply<\/strong>. O banco prim\u00e1rio gera redo logs continuamente. Quando um log \u00e9 preenchido e arquivado, o par\u00e2metro <strong>log_archive_dest_2<\/strong> envia esse archivelog para o standby atrav\u00e9s do Oracle Net. No standby, o processo <strong>RFS (Remote File Server)<\/strong> recebe o arquivo, e o processo <strong>MRP (Managed Recovery Process)<\/strong> aplica as mudan\u00e7as no banco em modo de recupera\u00e7\u00e3o cont\u00ednua. Dependendo da configura\u00e7\u00e3o, o transporte pode ser <strong>s\u00edncrono<\/strong> (<strong>Maximum Availability<\/strong> ou <strong>Maximum Protection<\/strong>) ou <strong>ass\u00edncrono<\/strong> (<strong>Maximum Performance<\/strong>), cada um com implica\u00e7\u00f5es diferentes em lat\u00eancia e prote\u00e7\u00e3o contra perda de dados.<\/p>\n<p>Para operar <strong>Oracle em produ\u00e7\u00e3o<\/strong> com Data Guard, voc\u00ea precisar\u00e1 dominar tr\u00eas fases: prepara\u00e7\u00e3o do prim\u00e1rio, cria\u00e7\u00e3o do standby e valida\u00e7\u00e3o cont\u00ednua. A prepara\u00e7\u00e3o envolve habilitar <strong>FORCE LOGGING<\/strong>, criar <strong>Standby Redo Logs<\/strong> no prim\u00e1rio (e depois no standby) e configurar par\u00e2metros como <strong>log_archive_config<\/strong>, <strong>log_archive_dest_2<\/strong>, <strong>standby_file_management<\/strong> e <strong>fal_server<\/strong>. A cria\u00e7\u00e3o do standby pode ser feita de v\u00e1rias formas, mas a mais eficiente em vers\u00f5es modernas \u00e9 o <strong>RMAN DUPLICATE FROM ACTIVE DATABASE<\/strong>, que copia os arquivos diretamente pela rede, sem necessidade de backup intermedi\u00e1rio em disco.<\/p>\n<h3>RAC: Fundamentos e Componentes Cr\u00edticos<\/h3>\n<p>Antes de partir para a configura\u00e7\u00e3o do Data Guard, \u00e9 essencial entender como verificar um cluster <strong>RAC<\/strong> j\u00e1 existente, pois voc\u00ea pode assumir um ambiente <strong>Oracle em produ\u00e7\u00e3o<\/strong> que j\u00e1 utiliza essa tecnologia. O <strong>RAC<\/strong> exige pelo menos dois n\u00f3s, cada um com sua pr\u00f3pria inst\u00e2ncia Oracle, mas compartilhando o mesmo banco f\u00edsico via <strong>ASM<\/strong> ou sistema de arquivos clusterizado. O objetivo \u00e9 duplo: continuidade em caso de falha de um n\u00f3 e aumento de capacidade de processamento, j\u00e1 que conex\u00f5es podem ser distribu\u00eddas entre as inst\u00e2ncias.<\/p>\n<p>Os principais comandos para inspecionar um cluster <strong>RAC<\/strong> s\u00e3o fornecidos pelas ferramentas <strong>crsctl<\/strong> e <strong>srvctl<\/strong>. O <strong>crsctl<\/strong> controla o <strong>Oracle Clusterware<\/strong> e seus recursos, enquanto o <strong>srvctl<\/strong> gerencia recursos espec\u00edficos do Oracle, como bancos, inst\u00e2ncias, listeners e servi\u00e7os. No dia a dia da <strong>JRT Technology Solutions<\/strong>, utilizamos esses comandos em scripts de monitoramento e em auditorias de ambientes cr\u00edticos. Vamos ver na pr\u00e1tica como obter o estado do cluster e de seus componentes.<\/p>\n<p>Para verificar se o cluster est\u00e1 ativo e saud\u00e1vel, execute como usu\u00e1rio <strong>oracle<\/strong>:<\/p>\n<pre><code># Verificar o estado do cluster em todos os n\u00f3s\ncrsctl check cluster -all<\/code><\/pre>\n<pre><code class=\"output\">**************************************************************\ndbpri:\nCRS-4537: Cluster Ready Services is online\nCRS-4529: Cluster Synchronization Services is online\nCRS-4533: Event Manager is online\n**************************************************************\ndbstb:\nCRS-4537: Cluster Ready Services is online\nCRS-4529: Cluster Synchronization Services is online\nCRS-4533: Event Manager is online\n**************************************************************<\/code><\/pre>\n<p>O comando <strong>crsctl check cluster -all<\/strong> consulta o estado do <strong>Oracle High Availability Services<\/strong> e do <strong>Cluster Ready Services<\/strong> em todos os n\u00f3s configurados. A sa\u00edda mostra tr\u00eas componentes fundamentais: <strong>Cluster Ready Services<\/strong> (CRS), <strong>Cluster Synchronization Services<\/strong> (CSS) e <strong>Event Manager<\/strong> (EVM). Se qualquer um deles estiver offline, o cluster n\u00e3o est\u00e1 funcional e precisa de interven\u00e7\u00e3o imediata. Em seguida, voc\u00ea deve listar os recursos do cluster para verificar bancos, listeners e servi\u00e7os:<\/p>\n<pre><code># Listar o status resumido dos principais recursos do cluster\ncrsctl status resource -t<\/code><\/pre>\n<pre><code class=\"output\">--------------------------------------------------------------------------------\nName           Target  State        Server                   State details       \n--------------------------------------------------------------------------------\nCluster Resources\n--------------------------------------------------------------------------------\nora.cssd\n      1        ONLINE  ONLINE       dbpri                   STABLE\nora.diskmon\n      1        OFFLINE OFFLINE                              STABLE\nora.evmd\n      1        ONLINE  ONLINE       dbpri                   STABLE\nora.orcl.db\n      1        ONLINE  ONLINE       dbpri                   Open,HOME=\/u01\/app\/o\n      2        ONLINE  ONLINE       dbstb                   Open,HOME=\/u01\/app\/o\nora.scan1.vip\n      1        ONLINE  ONLINE       dbpri                   STABLE\n--------------------------------------------------------------------------------<\/code><\/pre>\n<p>A sa\u00edda do <strong>crsctl status resource -t<\/strong> \u00e9 uma tabela com os recursos e seus estados. Repare que o banco <strong>ora.orcl.db<\/strong> aparece com duas entradas, uma para cada inst\u00e2ncia do RAC, ambas no estado <strong>ONLINE<\/strong> e com o status <strong>Open<\/strong>. Isso indica que as duas inst\u00e2ncias est\u00e3o abertas e prontas para receber conex\u00f5es. O recurso <strong>ora.scan1.vip<\/strong> representa o <strong>SCAN<\/strong>, que os clientes utilizam para conectar sem precisar saber qual n\u00f3 est\u00e1 ativo. Se voc\u00ea est\u00e1 come\u00e7ando agora, n\u00e3o precisa criar um RAC do zero, mas saber interpretar essas sa\u00eddas \u00e9 indispens\u00e1vel para atuar em <strong>Oracle em produ\u00e7\u00e3o<\/strong>.<\/p>\n<p>Para consultar a configura\u00e7\u00e3o de um banco RAC com <strong>srvctl<\/strong>, use:<\/p>\n<pre><code># Exibir a configura\u00e7\u00e3o do banco de dados ORCL no cluster\nsrvctl config database -d ORCL<\/code><\/pre>\n<pre><code class=\"output\">Database unique name: ORCL\nDatabase name: ORCL\nOracle home: \/u01\/app\/oracle\/product\/19.0.0\/dbhome_1\nOracle user: oracle\nSpfile: +DATA\/ORCL\/PARAMETERFILE\/spfile.276.1100000000\nPassword file: +DATA\/ORCL\/PASSWORD\/pwdorcl.256.1100000000\nDomain: \nStart options: open\nStop options: immediate\nDatabase role: PRIMARY\nManagement policy: AUTOMATIC\nServer pools: \nDisk Groups: DATA, FRA\nMount point paths: \nServices: \nType: RAC\nStart concurrency: \nStop concurrency: \nOSDBA group: dba\nOSOPER group: oper\nDatabase instances: ORCL1,ORCL2\nConfigured nodes: dbpri,dbstb\nDatabase is administrator managed<\/code><\/pre>\n<p>Esse comando mostra detalhes como o <strong>Spfile<\/strong> e o <strong>Password file<\/strong> armazenados no <strong>ASM<\/strong>, o tipo do banco (<strong>RAC<\/strong>), as inst\u00e2ncias configuradas e o papel atual do banco (<strong>PRIMARY<\/strong>). Em um ambiente com Data Guard, o papel pode aparecer como <strong>PHYSICAL STANDBY<\/strong> no site de conting\u00eancia. Entender essa sa\u00edda permite documentar e auditar o ambiente rapidamente, uma habilidade que valorizamos muito em nossos especialistas da <strong>JRT Technology Solutions<\/strong>.<\/p>\n<h3>Configurando Data Guard no Oracle em produ\u00e7\u00e3o \u2014 Passo a Passo Completo<\/h3>\n<p>Agora vamos ao cora\u00e7\u00e3o da aula: criar um <strong>Data Guard f\u00edsico<\/strong> do zero. Nosso cen\u00e1rio ter\u00e1 um banco prim\u00e1rio <strong>ORCL_PRI<\/strong> no servidor <strong>dbpri<\/strong> e um standby <strong>ORCL_STB<\/strong> no servidor <strong>dbstb<\/strong>. O primeiro passo \u00e9 garantir que o prim\u00e1rio esteja em modo <strong>ARCHIVELOG<\/strong> e com <strong>FORCE LOGGING<\/strong> ativado. O <strong>FORCE LOGGING<\/strong> impede que opera\u00e7\u00f5es como <strong>nologging<\/strong> deixem de gerar redo, o que \u00e9 cr\u00edtico para a consist\u00eancia do standby. Conecte-se ao prim\u00e1rio com SQL*Plus como <strong>SYS<\/strong> e execute a sequ\u00eancia abaixo.<\/p>\n<pre><code>-- Conectar no banco prim\u00e1rio como SYS\nsqlplus sys\/Oracle123@ORCL_PRI as sysdba\n\n-- 1. Habilitar force logging para garantir que todas as opera\u00e7\u00f5es gerem redo\nALTER DATABASE FORCE LOGGING;\n\n-- 2. Adicionar standby redo logs no prim\u00e1rio (o standby tamb\u00e9m precisar\u00e1 deles)\n-- Vamos criar 4 grupos adicionais, iniciando no grupo 4\nALTER DATABASE ADD STANDBY LOGFILE GROUP 4 \n  '\/u01\/oradata\/ORCL_PRI\/srl04.log' SIZE 200M;\nALTER DATABASE ADD STANDBY LOGFILE GROUP 5 \n  '\/u01\/oradata\/ORCL_PRI\/srl05.log' SIZE 200M;\nALTER DATABASE ADD STANDBY LOGFILE GROUP 6 \n  '\/u01\/oradata\/ORCL_PRI\/srl06.log' SIZE 200M;\nALTER DATABASE ADD STANDBY LOGFILE GROUP 7 \n  '\/u01\/oradata\/ORCL_PRI\/srl07.log' SIZE 200M;\n\n-- 3. Configurar par\u00e2metros de transporte de redo no prim\u00e1rio\nALTER SYSTEM SET log_archive_config='DG_CONFIG=(ORCL_PRI,ORCL_STB)' SCOPE=both;\nALTER SYSTEM SET log_archive_dest_2='SERVICE=ORCL_STB ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=ORCL_STB' SCOPE=both;\nALTER SYSTEM SET log_archive_dest_state_2=ENABLE SCOPE=both;\n\n-- 4. Configurar o gerenciamento autom\u00e1tico de arquivos e FAL no prim\u00e1rio\nALTER SYSTEM SET standby_file_management=AUTO SCOPE=both;\nALTER SYSTEM SET fal_server=ORCL_STB SCOPE=both;\n\n-- 5. Definir nomes de arquivo no standby para facilitar a convers\u00e3o\nALTER SYSTEM SET db_file_name_convert='\/u01\/oradata\/ORCL_STB\/','\/u01\/oradata\/ORCL_PRI\/' SCOPE=spfile;\nALTER SYSTEM SET log_file_name_convert='\/u01\/oradata\/ORCL_STB\/','\/u01\/oradata\/ORCL_PRI\/' SCOPE=spfile;<\/code><\/pre>\n<p>Cada bloco tem uma fun\u00e7\u00e3o espec\u00edfica. O comando <strong>ALTER DATABASE FORCE LOGGING<\/strong> ativa o registro obrigat\u00f3rio de redo. Os <strong>Standby Redo Logs<\/strong> (SRLs) s\u00e3o usados pelo standby para receber e aplicar redo em tempo real; criamos quatro grupos porque o prim\u00e1rio tem quatro grupos de redo online, e a regra pr\u00e1tica \u00e9 ter no m\u00ednimo o mesmo n\u00famero de grupos mais um. O par\u00e2metro <strong>log_archive_config<\/strong> define a lista de bancos participantes do Data Guard, permitindo que o prim\u00e1rio reconhe\u00e7a o standby. O <strong>log_archive_dest_2<\/strong> aponta para o servi\u00e7o de rede do standby com transporte ass\u00edncrono (<strong>ASYNC<\/strong>), priorizando performance. Os par\u00e2metros <strong>db_file_name_convert<\/strong> e <strong>log_file_name_convert<\/strong> instruem o standby a converter caminhos de arquivos quando um switchover ocorrer.<\/p>\n<p>Ap\u00f3s configurar o prim\u00e1rio, precisamos preparar os arquivos de rede. No prim\u00e1rio, edite o <strong>tnsnames.ora<\/strong> e adicione as entradas para os dois bancos. O conte\u00fado completo do arquivo em <strong>$ORACLE_HOME\/network\/admin\/tnsnames.ora<\/strong> deve ficar assim:<\/p>\n<pre><code># tnsnames.ora do servidor prim\u00e1rio (dbpri)\n# Entrada para o banco prim\u00e1rio local\nORCL_PRI =\n  (DESCRIPTION =\n    (ADDRESS = (PROTOCOL = TCP)(HOST = dbpri)(PORT = 1521))\n    (CONNECT_DATA =\n      (SERVER = DEDICATED)\n      (SERVICE_NAME = ORCL_PRI)\n    )\n  )\n\n# Entrada para o banco standby remoto\nORCL_STB =\n  (DESCRIPTION =\n    (ADDRESS = (PROTOCOL = TCP)(HOST = dbstb)(PORT = 1521))\n    (CONNECT_DATA =\n      (SERVER = DEDICATED)\n      (SERVICE_NAME = ORCL_STB)\n    )\n  )<\/code><\/pre>\n<p>Repare que usamos <strong>SERVICE_NAME<\/strong> em vez de <strong>SID<\/strong>, uma pr\u00e1tica recomendada para ambientes <strong>Oracle em produ\u00e7\u00e3o<\/strong> e obrigat\u00f3ria para conex\u00f5es com listeners que suportam m\u00faltiplos servi\u00e7os. A mesma configura\u00e7\u00e3o deve ser replicada no servidor standby, com os mesmos nomes e IPs, para que os processos de transporte consigam resolver os servi\u00e7os em ambas as dire\u00e7\u00f5es. Depois, no prim\u00e1rio, verifique se o listener est\u00e1 ativo e registre o banco, se necess\u00e1rio, com <strong>ALTER SYSTEM REGISTER<\/strong>.<\/p>\n<p>O pr\u00f3ximo passo \u00e9 criar o arquivo de senha e preparar o standby. No prim\u00e1rio, copie o arquivo de senha para o standby usando <strong>scp<\/strong>:<\/p>\n<pre><code># No servidor prim\u00e1rio (dbpri), copiar o password file para o standby\nscp $ORACLE_HOME\/dbs\/orapwORCL_PRI oracle@dbstb:$ORACLE_HOME\/dbs\/orapwORCL_STB<\/code><\/pre>\n<p>No servidor standby, crie o arquivo de par\u00e2metros inicial <strong>initORCL_STB.ora<\/strong> com o conte\u00fado abaixo. Esse arquivo ser\u00e1 usado para iniciar a inst\u00e2ncia em modo <strong>NOMOUNT<\/strong> durante a duplica\u00e7\u00e3o. O conte\u00fado completo deve ser:<\/p>\n<pre><code># initORCL_STB.ora no servidor standby (dbstb)\ndb_name=ORCL_PRI\ndb_unique_name=ORCL_STB\ndb_domain=\ncontrol_files='\/u01\/oradata\/ORCL_STB\/control01.ctl'\ndb_block_size=8192\nmemory_target=2G\nprocesses=300\naudit_file_dest='\/u01\/app\/oracle\/admin\/ORCL_STB\/adump'\ndb_file_name_convert='\/u01\/oradata\/ORCL_PRI\/','\/u01\/oradata\/ORCL_STB\/'\nlog_file_name_convert='\/u01\/oradata\/ORCL_PRI\/','\/u01\/oradata\/ORCL_STB\/'\nstandby_file_management=AUTO\nfal_server=ORCL_PRI\nremote_login_passwordfile=EXCLUSIVE<\/code><\/pre>\n<p>Esse arquivo de par\u00e2metros diz ao Oracle que a inst\u00e2ncia pertence ao banco <strong>ORCL_PRI<\/strong> (par\u00e2metro <strong>db_name<\/strong>), mas que seu nome \u00fanico no Data Guard \u00e9 <strong>ORCL_STB<\/strong> (<strong>db_unique_name<\/strong>). Os par\u00e2metros <strong>db_file_name_convert<\/strong> e <strong>log_file_name_convert<\/strong> mapeiam os caminhos do prim\u00e1rio para o standby, essenciais para a duplica\u00e7\u00e3o e para switchovers. O <strong>fal_server<\/strong> aponta para o prim\u00e1rio, permitindo que o standby solicite logs que eventualmente estejam faltando. O <strong>remote_login_passwordfile=EXCLUSIVE<\/strong> permite conex\u00f5es remotas como SYSDBA, necess\u00e1rias para o RMAN e o Data Guard.<\/p>\n<p>Com o arquivo pronto, inicie a inst\u00e2ncia standby em <strong>NOMOUNT<\/strong> e execute a duplica\u00e7\u00e3o via <strong>RMAN<\/strong>. Conecte-se ao prim\u00e1rio como TARGET e ao standby como AUXILIARY. O comando <strong>DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE<\/strong> copia todos os arquivos diretamente, sem necessidade de backup pr\u00e9vio. Veja a sequ\u00eancia completa:<\/p>\n<pre><code># No servidor standby (dbstb), como usu\u00e1rio oracle\nexport ORACLE_SID=ORCL_STB\nsqlplus \/ as sysdba\n\n-- Iniciar a inst\u00e2ncia em modo NOMOUNT\nSTARTUP NOMOUNT pfile='\/u01\/app\/oracle\/product\/19.0.0\/dbhome_1\/dbs\/initORCL_STB.ora'\nEXIT\n\n# Executar a duplica\u00e7\u00e3o RMAN\nrman target sys\/Oracle123@ORCL_PRI auxiliary sys\/Oracle123@ORCL_STB\n\nRMAN> DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE\n2>   DORECOVER\n3>   SPFILE\n4>     SET db_unique_name='ORCL_STB' COMMENT 'Data Guard standby'\n5>   NOFILENAMECHECK;<\/code><\/pre>\n<pre><code class=\"output\">Starting Duplicate Db at 19-SEP-2026 10:35:42\nusing target database control file instead of recovery catalog\nallocated channel: ORA_AUX_DISK_1\nchannel ORA_AUX_DISK_1: SID=54 device type=DISK\n...\ncontents of Memory Script:\n{\n   restore clone standby controlfile to  '\/u01\/oradata\/ORCL_STB\/control01.ctl' from\n   '\/u01\/oradata\/ORCL_PRI\/control01.ctl';\n}\nexecuting Memory Script\n...\nFinished Duplicate Db at 19-SEP-2026 10:58:17<\/code><\/pre>\n<p>O RMAN executa v\u00e1rias etapas internas: restaura o controlfile para standby, copia os datafiles, restore os standby redo logs e deixa o banco em modo de recupera\u00e7\u00e3o. O par\u00e2metro <strong>DORECOVER<\/strong> solicita que a recupera\u00e7\u00e3o seja iniciada automaticamente ap\u00f3s a c\u00f3pia, embora voc\u00ea possa controlar isso depois. O <strong>NOFILENAMECHECK<\/strong> permite que arquivos com caminhos diferentes entre prim\u00e1rio e standby sejam aceitos sem erro. Ao final, se a mensagem <strong>Finished Duplicate Db<\/strong> aparecer sem erros, o standby foi criado com sucesso. Em nossos projetos na <strong>JRT Technology Solutions<\/strong>, esse \u00e9 o procedimento padr\u00e3o para provisionar r\u00e9plicas f\u00edsicas em <strong>Oracle em produ\u00e7\u00e3o<\/strong>.<\/p>\n<p>Agora, conecte-se ao standby e inicie o <strong>Managed Recovery Process<\/strong> (MRP) para aplicar os logs recebidos. Execute:<\/p>\n<pre><code># No standby, como SYS\nsqlplus \/ as sysdba\nALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;<\/code><\/pre>\n<p>Esse comando inicia a recupera\u00e7\u00e3o gerenciada em segundo plano, aplicando os redo logs recebidos do prim\u00e1rio, inclusive o log online corrente se a transfer\u00eancia estiver ativa. A op\u00e7\u00e3o <strong>DISCONNECT FROM SESSION<\/strong> libera o terminal, e o processo continua rodando no servidor. Para verificar se o transporte e a aplica\u00e7\u00e3o est\u00e3o funcionando, consulte a view <strong>V$ARCHIVE_DEST<\/strong> no prim\u00e1rio e a <strong>V$MANAGED_STANDBY<\/strong> no standby, como veremos na se\u00e7\u00e3o de verifica\u00e7\u00e3o.<\/p>\n<h3>Configura\u00e7\u00e3o Detalhada de Arquivos e Par\u00e2metros<\/h3>\n<p>Nesta se\u00e7\u00e3o, vamos consolidar e detalhar cada arquivo de configura\u00e7\u00e3o envolvido no <strong>Oracle em produ\u00e7\u00e3o<\/strong> com Data Guard. Ter esses arquivos documentados e padronizados evita erros recorrentes e facilita a automa\u00e7\u00e3o. Come\u00e7aremos pelo <strong>listener.ora<\/strong> do standby, que precisa estar ativo para aceitar conex\u00f5es do prim\u00e1rio. O conte\u00fado completo do arquivo em <strong>$ORACLE_HOME\/network\/admin\/listener.ora<\/strong> no servidor standby deve ser:<\/p>\n<pre><code># listener.ora do servidor standby (dbstb)\nLISTENER =\n  (DESCRIPTION_LIST =\n    (DESCRIPTION =\n      (ADDRESS = (PROTOCOL = TCP)(HOST = dbstb)(PORT = 1521))\n      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))\n    )\n  )\n\nSID_LIST_LISTENER =\n  (SID_LIST =\n    (SID_DESC =\n      (GLOBAL_DBNAME = ORCL_STB)\n      (ORACLE_HOME = \/u01\/app\/oracle\/product\/19.0.0\/dbhome_1)\n      (SID_NAME = ORCL_STB)\n    )\n  )<\/code><\/pre>\n<p>O bloco <strong>SID_LIST_LISTENER<\/strong> registra estaticamente o servi\u00e7o <strong>ORCL_STB<\/strong> no listener, garantindo que mesmo antes do registro din\u00e2mico da inst\u00e2ncia as conex\u00f5es possam ser aceitas. Isso \u00e9 particularmente importante durante a duplica\u00e7\u00e3o, quando a inst\u00e2ncia est\u00e1 em <strong>NOMOUNT<\/strong> e ainda n\u00e3o registrou servi\u00e7os dinamicamente. O par\u00e2metro <strong>GLOBAL_DBNAME<\/strong> deve ser o nome \u00fanico do banco standby, e o <strong>SID_NAME<\/strong> deve corresponder ao <strong>ORACLE_SID<\/strong> da inst\u00e2ncia.<\/p>\n<p>No prim\u00e1rio, o <strong>listener.ora<\/strong> n\u00e3o precisa de configura\u00e7\u00e3o est\u00e1tica se o registro din\u00e2mico estiver ativo, mas em ambientes de alta disponibilidade recomendamos manter uma entrada semelhante para facilitar failovers. O arquivo <strong>tnsnames.ora<\/strong> j\u00e1 foi apresentado na se\u00e7\u00e3o anterior e deve ser id\u00eantico em ambos os servidores, exceto pelo endere\u00e7o do host local quando os nomes DNS n\u00e3o resolvem. Em laborat\u00f3rios sem DNS, adicione as entradas em <strong>\/etc\/hosts<\/strong> nos dois servidores:<\/p>\n<pre><code># \/etc\/hosts no dbpri e no dbstb\n192.168.56.101   dbpri\n192.168.56.102   dbstb<\/code><\/pre>\n<p>Os par\u00e2metros principais do banco prim\u00e1rio, ap\u00f3s a configura\u00e7\u00e3o do Data Guard, podem ser consultados com o comando <strong>SHOW PARAMETER<\/strong>. A tabela a seguir resume os par\u00e2metros cr\u00edticos, seus valores recomendados e o efeito pr\u00e1tico em <strong>Oracle em produ\u00e7\u00e3o<\/strong>.<\/p>\n<table border=\"1\" cellpadding=\"8\" cellspacing=\"0\">\n<tr>\n<th>Par\u00e2metro<\/th>\n<th>Valor recomendado<\/th>\n<th>Efeito pr\u00e1tico<\/th>\n<\/tr>\n<tr>\n<td><strong>db_unique_name<\/strong><\/td>\n<td>ORCL_PRI \/ ORCL_STB<\/td>\n<td>Identifica unicamente cada banco no Data Guard.<\/td>\n<\/tr>\n<tr>\n<td><strong>log_archive_config<\/strong><\/td>\n<td>DG_CONFIG=(ORCL_PRI,ORCL_STB)<\/td>\n<td>Lista os membros do Data Guard e evita envio indevido.<\/td>\n<\/tr>\n<tr>\n<td><strong>log_archive_dest_2<\/strong><\/td>\n<td>SERVICE=ORCL_STB ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=ORCL_STB<\/td>\n<td>Define transporte ass\u00edncrono para o standby, priorizando performance.<\/td>\n<\/tr>\n<tr>\n<td><strong>standby_file_management<\/strong><\/td>\n<td>AUTO<\/td>\n<td>Permite adicionar datafiles no standby automaticamente.<\/td>\n<\/tr>\n<tr>\n<td><strong>fal_server<\/strong><\/td>\n<td>ORCL_PRI no standby \/ ORCL_STB no prim\u00e1rio<\/td>\n<td>Permite solicitar logs ausentes (Fetch Archive Log).<\/td>\n<\/tr>\n<\/table>\n<p>Outro arquivo importante \u00e9 o <strong>spfile<\/strong> do standby, criado durante a duplica\u00e7\u00e3o. Voc\u00ea pode revis\u00e1-lo com <strong>CREATE PFILE FROM SPFILE<\/strong> e inspecionar os par\u00e2metros. Em produ\u00e7\u00e3o, recomendamos manter o spfile no ASM, mas em laborat\u00f3rio o file system atende. Para converter o standby em um papel prim\u00e1rio no futuro, os par\u00e2metros <strong>db_file_name_convert<\/strong> e <strong>log_file_name_convert<\/strong> devem estar corretos em ambos os lados, pois eles mapeiam os caminhos durante um switchover. Sem eles, o banco pode tentar abrir com caminhos inexistentes e falhar.<\/p>\n<p>Por fim, lembre-se de que o <strong>Data Guard Broker<\/strong> pode facilitar a administra\u00e7\u00e3o com o utilit\u00e1rio <strong>DGMGRL<\/strong>. A configura\u00e7\u00e3o do broker \u00e9 opcional, mas fortemente recomendada para <strong>Oracle em produ\u00e7\u00e3o<\/strong>, porque centraliza o switchover, failover e monitoramento. Os comandos b\u00e1sicos seriam <strong>CREATE CONFIGURATION &#8216;DG_ORCL&#8217; AS PRIMARY DATABASE IS ORCL_PRI CONNECT IDENTIFIER IS ORCL_PRI<\/strong>, seguido de <strong>ADD DATABASE ORCL_STB AS CONNECT IDENTIFIER IS ORCL_STB<\/strong> e <strong>ENABLE CONFIGURATION<\/strong>. Deixaremos essa configura\u00e7\u00e3o como exerc\u00edcio avan\u00e7ado, mas a base que voc\u00ea construiu j\u00e1 suporta a opera\u00e7\u00e3o manual completa.<\/p>\n<h3>Verificando a Instala\u00e7\u00e3o \/ Testando a Configura\u00e7\u00e3o<\/h3>\n<p>Depois de configurar o Data Guard, \u00e9 obrigat\u00f3rio validar se tudo est\u00e1 funcionando corretamente. A primeira verifica\u00e7\u00e3o deve ser no banco prim\u00e1rio, consultando o status do destino de archive. Conecte-se ao prim\u00e1rio com SQL*Plus e execute:<\/p>\n<pre><code>-- No prim\u00e1rio: verificar status do envio de archivelogs para o standby\nSELECT DEST_ID, DEST_NAME, STATUS, TARGET, DB_UNIQUE_NAME, ERROR\nFROM V$ARCHIVE_DEST\nWHERE STATUS != 'INACTIVE';<\/code><\/pre>\n<pre><code class=\"output\">   DEST_ID DEST_NAME                              STATUS    TARGET    DB_UNIQUE_NAME    ERROR\n---------- -------------------------------------- --------- --------- ---------------- ----------\n         1 LOG_ARCHIVE_DEST_1                     VALID     PRIMARY   ORCL_PRI\n         2 LOG_ARCHIVE_DEST_2                     VALID     STANDBY   ORCL_STB<\/code><\/pre>\n<p>A presen\u00e7a do destino 2 com <strong>STATUS<\/strong> igual a <strong>VALID<\/strong> e <strong>TARGET<\/strong> igual a <strong>STANDBY<\/strong> indica que o prim\u00e1rio reconhece o destino e n\u00e3o h\u00e1 erros de configura\u00e7\u00e3o imediatos. Se houver falha de rede ou par\u00e2metro incorreto, o <strong>ERROR<\/strong> trar\u00e1 uma mensagem detalhada, como <strong>ORA-12541<\/strong>. Em seguida, consulte a vis\u00e3o <strong>V$ARCHIVED_LOG<\/strong> para confirmar que archivelogs foram gerados e enviados:<\/p>\n<pre><code>-- No prim\u00e1rio: verificar os \u00faltimos archivelogs enviados\nSELECT SEQUENCE#, NAME, APPLIED, DELETED, COMPLETION_TIME\nFROM V$ARCHIVED_LOG\nWHERE DEST_ID = 2\nORDER BY SEQUENCE# DESC\nFETCH FIRST 5 ROWS ONLY;<\/code><\/pre>\n<p>No standby, a verifica\u00e7\u00e3o essencial \u00e9 a do processo de recupera\u00e7\u00e3o ativo. Execute:<\/p>\n<pre><code>-- No standby: verificar o processo de managed recovery\nSELECT PROCESS, STATUS, THREAD#, SEQUENCE#, BLOCK#, BLOCKS\nFROM V$MANAGED_STANDBY\nWHERE PROCESS LIKE 'MRP%' OR PROCESS LIKE 'RFS%';<\/code><\/pre>\n<pre><code class=\"output\">PROCESS   STATUS          THREAD#  SEQUENCE#     BLOCK#     BLOCKS\n--------- --------------- -------- ---------- ---------- ----------\nMRP0      APPLYING_LOG          1         47          0     204800\nRFS       IDLE                  1         48          0     204800\nRFS       IDLE                  0          0          0          0<\/code><\/pre>\n<p>A linha com <strong>MRP0<\/strong> e status <strong>APPLYING_LOG<\/strong> confirma que o standby est\u00e1 aplicando redo ativamente. As linhas <strong>RFS<\/strong> com status <strong>IDLE<\/strong> s\u00e3o processos que recebem os archivelogs do prim\u00e1rio. Se o MRP n\u00e3o estiver presente ou o status for <strong>WAIT_FOR_LOG<\/strong>, pode ser que os logs ainda n\u00e3o tenham chegado, mas o processo deve estar ativo. Outra verifica\u00e7\u00e3o importante \u00e9 o papel do banco no Data Guard:<\/p>\n<pre><code>-- No standby: confirmar que o banco \u00e9 um physical standby\nSELECT DATABASE_ROLE, OPEN_MODE, PROTECTION_MODE, PROTECTION_LEVEL\nFROM V$DATABASE;<\/code><\/pre>\n<pre><code class=\"output\">DATABASE_ROLE    OPEN_MODE            PROTECTION_MODE      PROTECTION_LEVEL\n---------------- -------------------- -------------------- --------------------\nPHYSICAL STANDBY MOUNTED              MAXIMUM PERFORMANCE  MAXIMUM PERFORMANCE<\/code><\/pre>\n<p>Se voc\u00ea visualizar <strong>PHYSICAL STANDBY<\/strong> e <strong>MOUNTED<\/strong>, o banco est\u00e1 no estado correto para opera\u00e7\u00e3o cont\u00ednua. O <strong>PROTECTION_MODE<\/strong> \u00e9 <strong>MAXIMUM PERFORMANCE<\/strong>, coerente com o transporte ass\u00edncrono que configuramos. Para testar o fluxo completo, force um switch de log no prim\u00e1rio e observe o sequence aumentar no standby:<\/p>\n<pre><code>-- No prim\u00e1rio: for\u00e7ar a gera\u00e7\u00e3o de um novo archivelog\nALTER SYSTEM SWITCH LOGFILE;<\/code><\/pre>\n<p>Depois, aguarde alguns segundos e consulte novamente a <strong>V$MANAGED_STANDBY<\/strong> no standby. O <strong>SEQUENCE#<\/strong> do MRP deve avan\u00e7ar, confirmando que o transporte e a aplica\u00e7\u00e3o est\u00e3o sincronizados. Esse teste simples \u00e9 executado diariamente por nossos especialistas da <strong>JRT Technology Solutions<\/strong> em ambientes <strong>Oracle em produ\u00e7\u00e3o<\/strong> para garantir a sa\u00fade do Data Guard.<\/p>\n<h3>Erros Comuns e Como Resolver<\/h3>\n<p>Mesmo com os procedimentos corretos, problemas podem surgir. Nesta se\u00e7\u00e3o, listamos os erros mais frequentes que encontramos ao configurar e operar <strong>Oracle em produ\u00e7\u00e3o<\/strong> com Data Guard e RAC, com suas causas, sintomas e solu\u00e7\u00f5es completas. Estude cada um com aten\u00e7\u00e3o, pois eles aparecem em ambientes reais constantemente.<\/p>\n<ul>\n<li><strong><\/ul>\n<div style=\"margin:52px 0 40px;padding:36px 28px;background:linear-gradient(135deg,#0f172a 0%,#1a2744 100%);border:2px solid #25D366;border-radius:18px;text-align:center;box-shadow:0 4px 28px rgba(37,211,102,0.18)\">\n<p style=\"margin:0 0 10px;font-size:18px;color:#ffffff;font-weight:700;line-height:1.4\">Quer aprender na pr\u00e1tica com especialistas?<\/p>\n<p style=\"margin:0 0 28px;font-size:15px;color:#94a3b8;font-weight:400;line-height:1.6\">A JRT Technology Solutions oferece treinamentos e implementa\u00e7\u00e3o de Oracle SQL para equipes corporativas.<\/p>\n<p>  <a href=\"https:\/\/api.whatsapp.com\/send\/?phone=5521980606699&#038;text=Ol%C3%A1!%20Tenho%20interesse%20no%20treinamento%20de%20Oracle%20SQL.&#038;type=phone_number&#038;app_absent=0\"\n     target=\"_blank\" rel=\"noopener noreferrer\"\n     style=\"display:inline-flex;align-items:center;gap:12px;background:#25D366;color:#ffffff;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;font-weight:700;padding:15px 32px;border-radius:100px;text-decoration:none;box-shadow:0 4px 16px rgba(37,211,102,0.45);letter-spacing:0.01em\"><br \/>\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"#ffffff\"><path d=\"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z\"\/><\/svg><br \/>\n    Falar no WhatsApp<br \/>\n  <\/a>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Chegamos \u00e0 aula final do curso Oracle SQL \u2014 Do Zero ao Avan\u00e7ado, e o tema n\u00e3o poderia ser mais relevante: Oracle em produ\u00e7\u00e3o. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas &#8230; <a title=\"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade\" class=\"read-more\" href=\"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/\" aria-label=\"Read more about Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade\">Ler mais<\/a><\/p>\n","protected":false},"author":1,"featured_media":2987,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"iawp_total_views":0,"footnotes":""},"categories":[75],"tags":[3478],"class_list":["post-2988","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops","tag-oracle-sql-do-zero-ao-avancado-oracle-em-producao-rac-data-guard-e-alta-disponibilidade"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Chegamos \u00e0 aula final do curso Oracle SQL \u2014 Do Zero ao Avan\u00e7ado, e o tema n\u00e3o poderia ser mais relevante: Oracle em produ\u00e7\u00e3o. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Thiago Paes Rodrigues\"\/>\n\t<meta name=\"google-site-verification\" content=\"QKPfpDCzHmzKyfFk5j1KZW3HhROYTPeqwBN5qcJ8qcg\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_BR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"BLOG - JRT Technology Solutions - Um espa\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\u00e1tica e atual. Aqui voc\u00ea encontra novidades, an\u00e1lises, tutoriais e reflex\u00f5es sobre inova\u00e7\u00e3o, intelig\u00eancia artificial, gadgets, programa\u00e7\u00e3o e tend\u00eancias digitais. Nosso objetivo \u00e9 simplificar o complexo, ajudar voc\u00ea a se manter atualizado e transformar conhecimento em pr\u00e1tica no seu dia a dia.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions\" \/>\n\t\t<meta property=\"og:description\" content=\"Chegamos \u00e0 aula final do curso Oracle SQL \u2014 Do Zero ao Avan\u00e7ado, e o tema n\u00e3o poderia ser mais relevante: Oracle em produ\u00e7\u00e3o. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"100\" \/>\n\t\t<meta property=\"og:image:height\" content=\"75\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-19T21:06:11+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-19T21:06:11+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/profile.php?id=61590814880509\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Chegamos \u00e0 aula final do curso Oracle SQL \u2014 Do Zero ao Avan\u00e7ado, e o tema n\u00e3o poderia ser mais relevante: Oracle em produ\u00e7\u00e3o. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#blogposting\",\"name\":\"Aula 24: Oracle em produ\\u00e7\\u00e3o \\u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions\",\"headline\":\"Aula 24: Oracle em produ\\u00e7\\u00e3o \\u2014 RAC, Data Guard e alta disponibilidade\",\"author\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/ai-image-1789851963963.jpg\",\"width\":1440,\"height\":1024,\"caption\":\"Aula 24: Oracle em produ\\u00e7\\u00e3o \\u2014 RAC, Data Guard e alta disponibilidade\"},\"datePublished\":\"2026-09-19T18:06:11-03:00\",\"dateModified\":\"2026-09-19T18:06:11-03:00\",\"inLanguage\":\"pt-BR\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#webpage\"},\"articleSection\":\"DevOps, Oracle SQL \\u2014 Do Zero ao Avan\\u00e7ado: Oracle em produ\\u00e7\\u00e3o \\u2014 RAC, Data Guard e alta disponibilidade\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/jrtx.com.br\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/category\\\/devops\\\/#listItem\",\"name\":\"DevOps\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/category\\\/devops\\\/#listItem\",\"position\":2,\"name\":\"DevOps\",\"item\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/category\\\/devops\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#listItem\",\"name\":\"Aula 24: Oracle em produ\\u00e7\\u00e3o \\u2014 RAC, Data Guard e alta disponibilidade\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#listItem\",\"position\":3,\"name\":\"Aula 24: Oracle em produ\\u00e7\\u00e3o \\u2014 RAC, Data Guard e alta disponibilidade\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/category\\\/devops\\\/#listItem\",\"name\":\"DevOps\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#organization\",\"name\":\"JRT Technology Solutions | Tecnologia e Inova\\u00e7\\u00e3o para Empresas\",\"description\":\"Um espa\\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\\u00e1tica e atual. Aqui voc\\u00ea encontra novidades, an\\u00e1lises, tutoriais e reflex\\u00f5es sobre inova\\u00e7\\u00e3o, intelig\\u00eancia artificial, gadgets, programa\\u00e7\\u00e3o e tend\\u00eancias digitais. Nosso objetivo \\u00e9 simplificar o complexo, ajudar voc\\u00ea a se manter atualizado e transformar conhecimento em pr\\u00e1tica no seu dia a dia.\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/\",\"telephone\":\"+552138277513\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/cropped-logo-mini.jpg\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#organizationLogo\",\"width\":100,\"height\":75},\"image\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#organizationLogo\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/profile.php?id=61590814880509\",\"https:\\\/\\\/www.instagram.com\\\/jrtx.tech\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/#author\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/\",\"name\":\"Thiago Paes Rodrigues\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#authorImage\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/cropped-foto-rascunho3-96x96.jpeg\",\"width\":96,\"height\":96,\"caption\":\"Thiago Paes Rodrigues\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#webpage\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/\",\"name\":\"Aula 24: Oracle em produ\\u00e7\\u00e3o \\u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions\",\"description\":\"Chegamos \\u00e0 aula final do curso Oracle SQL \\u2014 Do Zero ao Avan\\u00e7ado, e o tema n\\u00e3o poderia ser mais relevante: Oracle em produ\\u00e7\\u00e3o. At\\u00e9 aqui, voc\\u00ea dominou modelagem, consultas, PL\\\/SQL, tuning e administra\\u00e7\\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\\u00edvel mesmo diante de falhas\",\"inLanguage\":\"pt-BR\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/ai-image-1789851963963.jpg\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#mainImage\",\"width\":1440,\"height\":1024,\"caption\":\"Aula 24: Oracle em produ\\u00e7\\u00e3o \\u2014 RAC, Data Guard e alta disponibilidade\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/19\\\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\\\/#mainImage\"},\"datePublished\":\"2026-09-19T18:06:11-03:00\",\"dateModified\":\"2026-09-19T18:06:11-03:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/\",\"name\":\"JRT Technology Solutions | Tecnologia e Inova\\u00e7\\u00e3o para Empresas\",\"alternateName\":\"JRT Technology Solutions | Tecnologia e Inova\\u00e7\\u00e3o para Empresas\",\"description\":\"Um espa\\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\\u00e1tica e atual. Aqui voc\\u00ea encontra novidades, an\\u00e1lises, tutoriais e reflex\\u00f5es sobre inova\\u00e7\\u00e3o, intelig\\u00eancia artificial, gadgets, programa\\u00e7\\u00e3o e tend\\u00eancias digitais. Nosso objetivo \\u00e9 simplificar o complexo, ajudar voc\\u00ea a se manter atualizado e transformar conhecimento em pr\\u00e1tica no seu dia a dia.\",\"inLanguage\":\"pt-BR\",\"publisher\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions","description":"Chegamos \u00e0 aula final do curso Oracle SQL \u2014 Do Zero ao Avan\u00e7ado, e o tema n\u00e3o poderia ser mais relevante: Oracle em produ\u00e7\u00e3o. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas","canonical_url":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"QKPfpDCzHmzKyfFk5j1KZW3HhROYTPeqwBN5qcJ8qcg","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#blogposting","name":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions","headline":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade","author":{"@id":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/#author"},"publisher":{"@id":"https:\/\/jrtx.com.br\/blog\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/09\/ai-image-1789851963963.jpg","width":1440,"height":1024,"caption":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade"},"datePublished":"2026-09-19T18:06:11-03:00","dateModified":"2026-09-19T18:06:11-03:00","inLanguage":"pt-BR","mainEntityOfPage":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#webpage"},"isPartOf":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#webpage"},"articleSection":"DevOps, Oracle SQL \u2014 Do Zero ao Avan\u00e7ado: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade"},{"@type":"BreadcrumbList","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog#listItem","position":1,"name":"Home","item":"https:\/\/jrtx.com.br\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/category\/devops\/#listItem","name":"DevOps"}},{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/category\/devops\/#listItem","position":2,"name":"DevOps","item":"https:\/\/jrtx.com.br\/blog\/category\/devops\/","nextItem":{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#listItem","name":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade"},"previousItem":{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#listItem","position":3,"name":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade","previousItem":{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/category\/devops\/#listItem","name":"DevOps"}}]},{"@type":"Organization","@id":"https:\/\/jrtx.com.br\/blog\/#organization","name":"JRT Technology Solutions | Tecnologia e Inova\u00e7\u00e3o para Empresas","description":"Um espa\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\u00e1tica e atual. Aqui voc\u00ea encontra novidades, an\u00e1lises, tutoriais e reflex\u00f5es sobre inova\u00e7\u00e3o, intelig\u00eancia artificial, gadgets, programa\u00e7\u00e3o e tend\u00eancias digitais. Nosso objetivo \u00e9 simplificar o complexo, ajudar voc\u00ea a se manter atualizado e transformar conhecimento em pr\u00e1tica no seu dia a dia.","url":"https:\/\/jrtx.com.br\/blog\/","telephone":"+552138277513","logo":{"@type":"ImageObject","url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#organizationLogo","width":100,"height":75},"image":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#organizationLogo"},"sameAs":["https:\/\/www.facebook.com\/profile.php?id=61590814880509","https:\/\/www.instagram.com\/jrtx.tech\/"]},{"@type":"Person","@id":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/#author","url":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/","name":"Thiago Paes Rodrigues","image":{"@type":"ImageObject","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#authorImage","url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/09\/cropped-foto-rascunho3-96x96.jpeg","width":96,"height":96,"caption":"Thiago Paes Rodrigues"}},{"@type":"WebPage","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#webpage","url":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/","name":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions","description":"Chegamos \u00e0 aula final do curso Oracle SQL \u2014 Do Zero ao Avan\u00e7ado, e o tema n\u00e3o poderia ser mais relevante: Oracle em produ\u00e7\u00e3o. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas","inLanguage":"pt-BR","isPartOf":{"@id":"https:\/\/jrtx.com.br\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#breadcrumblist"},"author":{"@id":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/#author"},"creator":{"@id":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/09\/ai-image-1789851963963.jpg","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#mainImage","width":1440,"height":1024,"caption":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade"},"primaryImageOfPage":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/#mainImage"},"datePublished":"2026-09-19T18:06:11-03:00","dateModified":"2026-09-19T18:06:11-03:00"},{"@type":"WebSite","@id":"https:\/\/jrtx.com.br\/blog\/#website","url":"https:\/\/jrtx.com.br\/blog\/","name":"JRT Technology Solutions | Tecnologia e Inova\u00e7\u00e3o para Empresas","alternateName":"JRT Technology Solutions | Tecnologia e Inova\u00e7\u00e3o para Empresas","description":"Um espa\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\u00e1tica e atual. Aqui voc\u00ea encontra novidades, an\u00e1lises, tutoriais e reflex\u00f5es sobre inova\u00e7\u00e3o, intelig\u00eancia artificial, gadgets, programa\u00e7\u00e3o e tend\u00eancias digitais. Nosso objetivo \u00e9 simplificar o complexo, ajudar voc\u00ea a se manter atualizado e transformar conhecimento em pr\u00e1tica no seu dia a dia.","inLanguage":"pt-BR","publisher":{"@id":"https:\/\/jrtx.com.br\/blog\/#organization"}}]},"og:locale":"pt_BR","og:site_name":"BLOG - JRT Technology Solutions - Um espa\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\u00e1tica e atual. Aqui voc\u00ea encontra novidades, an\u00e1lises, tutoriais e reflex\u00f5es sobre inova\u00e7\u00e3o, intelig\u00eancia artificial, gadgets, programa\u00e7\u00e3o e tend\u00eancias digitais. Nosso objetivo \u00e9 simplificar o complexo, ajudar voc\u00ea a se manter atualizado e transformar conhecimento em pr\u00e1tica no seu dia a dia.","og:type":"article","og:title":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions","og:description":"Chegamos \u00e0 aula final do curso Oracle SQL \u2014 Do Zero ao Avan\u00e7ado, e o tema n\u00e3o poderia ser mais relevante: Oracle em produ\u00e7\u00e3o. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas","og:url":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/","og:image":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg","og:image:secure_url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg","og:image:width":100,"og:image:height":75,"article:published_time":"2026-09-19T21:06:11+00:00","article:modified_time":"2026-09-19T21:06:11+00:00","article:publisher":"https:\/\/www.facebook.com\/profile.php?id=61590814880509","twitter:card":"summary_large_image","twitter:title":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade - BLOG - JRT Technology Solutions","twitter:description":"Chegamos \u00e0 aula final do curso Oracle SQL \u2014 Do Zero ao Avan\u00e7ado, e o tema n\u00e3o poderia ser mais relevante: Oracle em produ\u00e7\u00e3o. At\u00e9 aqui, voc\u00ea dominou modelagem, consultas, PL\/SQL, tuning e administra\u00e7\u00e3o local. Agora, o foco muda para o ambiente real das empresas, onde o banco precisa continuar dispon\u00edvel mesmo diante de falhas","twitter:image":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg"},"aioseo_meta_data":{"post_id":"2988","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_custom_url":null,"og_image_custom_fields":null,"og_image_url":null,"og_image_width":null,"og_image_height":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_image_url":null,"twitter_title":null,"twitter_description":null,"schema_type":"default","schema_type_options":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null,"created":"2026-09-19 21:08:29","updated":"2026-09-19 21:08:29","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/jrtx.com.br\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/jrtx.com.br\/blog\/category\/devops\/\" title=\"DevOps\">DevOps<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tAula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/jrtx.com.br\/blog"},{"label":"DevOps","link":"https:\/\/jrtx.com.br\/blog\/category\/devops\/"},{"label":"Aula 24: Oracle em produ\u00e7\u00e3o \u2014 RAC, Data Guard e alta disponibilidade","link":"https:\/\/jrtx.com.br\/blog\/2026\/09\/19\/aula-24-oracle-em-producao-rac-data-guard-e-alta-disponibili\/"}],"_links":{"self":[{"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/posts\/2988","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/comments?post=2988"}],"version-history":[{"count":0,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/posts\/2988\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/media\/2987"}],"wp:attachment":[{"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/media?parent=2988"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/categories?post=2988"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/tags?post=2988"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}