Replicação PostgreSQL: Arquitetura, Alta Disponibilidade e Proteção de Dados
O que é Replicação PostgreSQL
Replicação PostgreSQL é o processo utilizado para manter uma ou mais cópias de um banco de dados PostgreSQL sincronizadas com um servidor principal, permitindo construir arquiteturas de alta disponibilidade, recuperação de desastres, continuidade de negócios e, em determinados cenários, distribuição de cargas de leitura.
Em ambientes corporativos, a replicação PostgreSQL é um dos principais componentes para reduzir os riscos associados à indisponibilidade de bancos de dados. Quando corretamente planejada, ela permite manter servidores secundários atualizados e preparados para assumir determinadas funções caso ocorra uma falha no ambiente principal.
A replicação, entretanto, não deve ser tratada isoladamente. Um projeto empresarial precisa considerar também backup, armazenamento, rede, monitoramento, failover, segurança, recuperação e os requisitos de RTO e RPO da aplicação.
Como funciona a replicação PostgreSQL
Em uma arquitetura tradicional, existe um servidor PostgreSQL principal, chamado Primary, e um ou mais servidores secundários, chamados Standby.
O Primary processa as transações e gera registros no Write-Ahead Log, conhecido como WAL. Esses registros podem ser enviados aos servidores Standby, que os recebem e aplicam para manter uma cópia consistente do banco de dados.
Essa arquitetura permite criar uma cópia operacional do ambiente PostgreSQL sem depender exclusivamente de restaurações de backup para recuperar o serviço.
Principais objetivos da replicação
- Aumentar a disponibilidade do banco de dados;
- criar servidores Standby;
- reduzir o tempo de recuperação;
- apoiar estratégias de Disaster Recovery;
- reduzir riscos de indisponibilidade;
- permitir determinadas cargas de leitura em réplicas;
- manter cópias atualizadas dos dados;
- apoiar arquiteturas de missão crítica.
Replicação PostgreSQL em ambientes corporativos
Empresas com aplicações críticas precisam avaliar a replicação considerando o impacto de uma eventual falha.
Uma aplicação que pode permanecer indisponível por algumas horas possui requisitos diferentes de um sistema transacional que precisa permanecer disponível continuamente.
Por isso, a arquitetura de replicação deve ser consequência dos requisitos do negócio e não apenas uma decisão técnica baseada na quantidade de servidores disponíveis.
Replicação não é backup
Uma réplica mantém uma cópia atualizada dos dados, mas isso não significa que ela substitua uma política de backup.
Erros lógicos, exclusões acidentais, corrupção causada por determinados eventos ou alterações indesejadas podem ser replicados para o servidor secundário.
Por esse motivo, replicação e backup devem fazer parte de uma estratégia integrada de proteção de dados.

Tipos de Replicação PostgreSQL
Streaming Replication
A Streaming Replication é uma das principais tecnologias utilizadas para manter servidores PostgreSQL Standby sincronizados com um Primary.
Nessa arquitetura, registros WAL são transmitidos continuamente para os servidores secundários.
O objetivo é reduzir o atraso entre o banco principal e suas réplicas e manter os servidores Standby preparados para determinadas funções operacionais.
Primary
O Primary é responsável pelo processamento principal das transações.
- Recebe operações de escrita;
- processa transações;
- gera WAL;
- atende aplicações;
- envia alterações para os servidores de replicação.
Standby
O Standby recebe os dados de replicação e aplica os registros WAL localmente.
Dependendo da configuração, um servidor Standby pode permanecer disponível para consultas de leitura e também ser utilizado como candidato a assumir a função de Primary em um cenário de failover.
Replicação síncrona
Na replicação síncrona, o Primary pode aguardar a confirmação de um servidor Standby antes de considerar determinadas operações confirmadas.
Essa arquitetura pode reduzir o risco de perda de dados em um cenário de falha, principalmente quando os requisitos de RPO são muito rigorosos.
Vantagens da replicação síncrona
- Maior proteção contra perda de dados;
- menor diferença entre Primary e Standby;
- adequação a determinados ambientes de missão crítica.
Desafios da replicação síncrona
- Maior dependência da rede;
- possível aumento da latência;
- maior complexidade arquitetural;
- necessidade de dimensionamento adequado.
Replicação assíncrona
Na replicação assíncrona, o Primary não precisa aguardar a confirmação do Standby para concluir normalmente a transação.
Essa abordagem tende a apresentar menor impacto sobre a latência das transações, porém pode existir uma janela de dados ainda não aplicados no servidor secundário.
Quando utilizar replicação assíncrona
Ela pode ser adequada para ambientes nos quais a organização aceita determinado RPO e prioriza desempenho e menor dependência da latência entre os servidores.
Hot Standby
O Hot Standby permite que um servidor secundário permaneça disponível para consultas enquanto recebe e aplica alterações provenientes do ambiente principal.
Essa possibilidade pode ser útil para organizações que possuem grande volume de consultas de leitura e desejam separar parte da carga do servidor Primary.
Replicação em cascata
Em determinadas arquiteturas, um servidor Standby pode atuar como fonte de replicação para outros servidores secundários.
Esse modelo pode ser interessante quando existem múltiplos ambientes ou localidades e a organização deseja reduzir determinadas cargas de comunicação diretamente sobre o Primary.
Replicação PostgreSQL entre localidades
Empresas com requisitos de Disaster Recovery podem utilizar replicação entre diferentes ambientes físicos ou localidades.
Nesse cenário, a distância entre os servidores deve ser considerada no projeto, principalmente devido à latência, largura de banda, disponibilidade da rede e comportamento esperado do RPO.

Replication Lag, WAL e monitoramento
O que é Replication Lag
Replication Lag representa o atraso existente entre o servidor Primary e o servidor Standby durante o processo de replicação.
Em uma arquitetura saudável, esse atraso deve permanecer dentro dos limites definidos para o ambiente.
Um aumento inesperado do replication lag pode indicar problemas de rede, armazenamento, processamento, carga excessiva ou dificuldades na aplicação dos registros WAL.
Principais causas de replication lag
- Alta carga no servidor Standby;
- problemas de armazenamento;
- latência de rede;
- baixa largura de banda;
- grande volume de alterações;
- problemas no processo de replay;
- dimensionamento inadequado;
- retenção excessiva de WAL.
WAL — Write-Ahead Log
O WAL é um componente fundamental do PostgreSQL.
Antes de determinadas alterações serem efetivamente persistidas nos arquivos de dados, as informações necessárias para recuperação são registradas no WAL.
Esse mecanismo também é fundamental para diferentes estratégias de recuperação e replicação.
Por que monitorar WAL
- Identificar crescimento anormal;
- detectar problemas de replicação;
- acompanhar retenção;
- evitar consumo inesperado de armazenamento;
- identificar Standbys atrasados.
Replication Slots
Replication Slots podem garantir que determinados registros WAL permaneçam disponíveis enquanto um consumidor de replicação ainda precisar deles.
Esse recurso precisa ser monitorado com atenção.
Um servidor ou processo que permaneça atrasado pode fazer com que uma quantidade crescente de WAL seja mantida no ambiente, consumindo espaço de armazenamento.
Monitoramento de replicação
O monitoramento deve acompanhar tanto o estado dos servidores quanto o comportamento da replicação.
Indicadores importantes
- Replication lag;
- estado da conexão;
- WAL enviado;
- WAL recebido;
- WAL aplicado;
- tempo de atraso;
- estado dos Standbys;
- utilização de armazenamento;
- crescimento do WAL;
- quantidade de conexões;
- erros de replicação.
Monitoramento do Primary
O Primary deve ser monitorado quanto a CPU, memória, armazenamento, I/O, conexões, transações, consultas, locks, deadlocks e geração de WAL.
Monitoramento do Standby
O Standby deve ser monitorado quanto ao recebimento e aplicação do WAL, replication lag, capacidade de armazenamento e estado da conexão com o Primary.
Por que monitorar os dois lados
Um Primary pode estar funcionando normalmente enquanto o Standby apresenta atraso significativo.
Se essa condição não for identificada, a organização pode acreditar que possui uma réplica pronta para failover quando, na realidade, ela está muito atrasada.

Replicação PostgreSQL para Alta Disponibilidade e Disaster Recovery
Replicação e Failover
A replicação é um dos componentes fundamentais de uma arquitetura de failover.
Entretanto, replicação e failover são funções diferentes.
A replicação mantém os dados sincronizados entre os servidores. O failover define como um servidor secundário será promovido e como as aplicações serão direcionadas para o novo servidor ativo.
Failover manual
No failover manual, a equipe técnica avalia o estado do Primary e dos Standbys antes de promover um servidor secundário.
Esse modelo pode ser adequado para ambientes nos quais o RTO permite intervenção humana.
Failover automatizado
Em ambientes com requisitos mais rigorosos, mecanismos de automação podem detectar falhas e executar procedimentos previamente definidos.
A automação precisa ser projetada com cuidado para evitar cenários de split-brain e promoções incorretas.
Replicação e RPO
O RPO define a quantidade máxima de dados que a organização aceita perder em um incidente.
Uma replicação síncrona pode atender requisitos mais rigorosos de proteção de dados, enquanto uma replicação assíncrona pode ser suficiente quando existe uma pequena tolerância a perda de dados.
Replicação e RTO
O RTO determina quanto tempo a aplicação pode permanecer indisponível.
Quanto menor o RTO exigido, maior tende a ser a necessidade de automação, monitoramento, procedimentos documentados e infraestrutura preparada para recuperação rápida.
Replicação PostgreSQL e Disaster Recovery
Uma estratégia de Disaster Recovery pode utilizar servidores PostgreSQL replicados em uma segunda infraestrutura ou localidade.
O objetivo é manter uma alternativa operacional caso o ambiente principal fique indisponível por um evento de maior escala.
Elementos de uma arquitetura de DR
- Servidor ou ambiente secundário;
- replicação;
- backup independente;
- rede redundante;
- armazenamento adequado;
- monitoramento;
- procedimentos de recuperação;
- testes periódicos.
Replicação não elimina a necessidade de backup
Uma arquitetura madura deve combinar replicação e backup.
O backup permite recuperar estados anteriores do banco, enquanto a replicação mantém uma cópia operacional atualizada.
Essa diferença é especialmente importante em situações de erro humano ou alteração lógica indesejada.
Replicação PostgreSQL em ambientes críticos
Para aplicações de missão crítica, a arquitetura precisa ser validada por testes reais.
Não basta instalar dois servidores e verificar se os dados estão sendo replicados. É necessário simular falhas e confirmar se os procedimentos de recuperação realmente funcionam.
Testes recomendados
- Falha do Primary;
- perda de conectividade;
- falha do Standby;
- atraso de replicação;
- indisponibilidade de armazenamento;
- recuperação de um servidor;
- promoção de Standby;
- retorno do servidor recuperado;
- restauração de backup;
- cenário completo de Disaster Recovery.
Replicação PostgreSQL e EDB
Organizações que precisam de recursos empresariais para PostgreSQL podem avaliar tecnologias do ecossistema EnterpriseDB.
O portfólio EDB inclui soluções voltadas a replicação, alta disponibilidade, failover, ambientes distribuídos e operação corporativa de PostgreSQL.
A escolha entre recursos nativos do PostgreSQL, ferramentas complementares e tecnologias empresariais deve considerar requisitos técnicos, operacionais, de suporte e de negócio.
Quando implementar replicação PostgreSQL
A replicação deve ser considerada principalmente quando a indisponibilidade do banco representa impacto relevante para o negócio.
Também pode ser indicada quando existe necessidade de Disaster Recovery, continuidade operacional, servidores de leitura ou redução do tempo de recuperação.
Principais cenários
- Sistemas transacionais;
- ERP;
- sistemas financeiros;
- portais corporativos;
- aplicações de missão crítica;
- plataformas digitais;
- ambientes com requisitos de DR;
- migração de Oracle para PostgreSQL;
- ambientes PostgreSQL Enterprise.
FAQ — Replicação PostgreSQL
O que é Replicação PostgreSQL?
É o processo de manter uma ou mais cópias de um banco PostgreSQL sincronizadas com um servidor principal, utilizando mecanismos de replicação para transmissão e aplicação das alterações.
Qual a diferença entre Primary e Standby?
O Primary normalmente processa as operações principais do banco, enquanto o Standby recebe e aplica as alterações replicadas e pode exercer funções de leitura ou assumir a função principal em determinados cenários.
O que é Streaming Replication?
É uma arquitetura na qual os registros WAL são transmitidos continuamente do Primary para servidores Standby.
Qual a diferença entre replicação síncrona e assíncrona?
Na síncrona, determinadas transações podem depender da confirmação do servidor secundário. Na assíncrona, o Primary pode concluir a operação sem aguardar essa confirmação.
O que é Replication Lag?
É o atraso existente entre o processamento das alterações no Primary e sua recepção ou aplicação no servidor Standby.
Replication Lag pode causar problemas?
Sim. Um atraso elevado pode reduzir a efetividade do Standby em um cenário de failover e aumentar o risco de perda de dados conforme o RPO definido.
Replicação PostgreSQL substitui backup?
Não. Replicação e backup possuem objetivos diferentes e devem ser utilizados em conjunto.
É possível utilizar uma réplica PostgreSQL para consultas?
Sim. Uma configuração Hot Standby pode permitir consultas de leitura enquanto o servidor continua recebendo e aplicando alterações.
PostgreSQL suporta replicação entre localidades?
Sim. A arquitetura pode ser distribuída entre diferentes localidades, desde que sejam avaliados latência, conectividade, largura de banda, requisitos de RPO e comportamento do ambiente.
É possível automatizar o failover?
Sim. O failover pode ser automatizado utilizando ferramentas e arquiteturas apropriadas, mas o projeto precisa considerar mecanismos de detecção de falhas, promoção, fencing e prevenção de split-brain.
Quantos servidores PostgreSQL são necessários para replicação?
Não existe uma quantidade única. O número depende dos requisitos de disponibilidade, capacidade, RTO, RPO, Disaster Recovery e distribuição da infraestrutura.
Links Relacionados
Migração Oracle para PostgreSQL
Compatibilidade Oracle PostgreSQL
PostgreSQL Compatível com Oracle
Oracle Database vs EDB Postgres
Recursos Oficiais
- PostgreSQL — Alta Disponibilidade, Balanceamento e Replicação
- PostgreSQL — Servidores Standby e Replicação
- PostgreSQL — Streaming Replication
- PostgreSQL — Hot Standby
- EnterpriseDB — Documentação Oficial
- EDB Postgres Distributed — Documentação Oficial
Modernize seu Banco de Dados com a Dominus Tech

👉Planejando uma Migração Oracle para PostgreSQL?
A Dominus Tech é Parceira Gold da EnterpriseDB e apoia empresas em todas as etapas da modernização de bancos de dados Oracle para PostgreSQL. Nossa equipe possui experiência em ambientes corporativos de missão crítica, oferecendo serviços de assessment, planejamento, migração, otimização de desempenho, alta disponibilidade, observabilidade e suporte especializado para plataformas PostgreSQL Enterprise.
✔ Parceira Gold da EnterpriseDB no Brasil
A migração de Oracle para PostgreSQL representa uma oportunidade estratégica para reduzir custos de licenciamento, modernizar a infraestrutura e construir uma plataforma preparada para o futuro. Com uma metodologia estruturada e ferramentas especializadas da EnterpriseDB, ajudamos organizações a realizar essa transição com segurança, preservando aplicações críticas e minimizando riscos operacionais.
👉Entre em contato com nossos especialistas e solicite uma avaliação técnica do seu ambiente Oracle. Descubra a melhor estratégia para migrar para PostgreSQL com segurança, desempenho e redução de custos.
