O caso
O banco foi junto com a VM. E o backup estava na mesma VM.
O Isaac instalou o PostgreSQL na mesma VM que roda o sistema de pedidos. Numa sexta-feira, a VM falhou, e o banco não voltou. O backup era um script que rodava nessa mesma VM, e o último arquivo tinha três dias.
Naquela semana, a loja perdeu três dias de pedidos.
Este post parte de Fundamentos da Nuvem, de Armazenamento na Nuvem e de Regiões e Zonas.
O problema
Banco na VM é banco seu
Instalar o banco numa VM funciona no primeiro dia. Depois, alguém precisa fazer o resto: aplicar as atualizações de segurança, configurar os backups, testar se eles restauram, manter uma cópia em outro lugar e trocar de servidor quando o atual falha.
Em geral, ninguém faz tudo isso com a mesma disciplina de um time dedicado a banco.
A solução
Banco gerenciado
Um banco gerenciado (managed database) é um serviço em que o provedor instala e mantém o motor do banco. Ele cuida de atualizações, backups automáticos e troca de servidor quando algo falha. Você continua responsável pelos seus dados, pelo esquema, pelas consultas e por quem tem acesso.
Cada provedor tem o seu: Cloud SQL no Google Cloud, Amazon RDS na AWS, Azure SQL Database no Azure e OCI Database na Oracle Cloud.
Backups automáticos
O provedor faz cópias periódicas e guarda o registro das transações, para restaurar até um momento específico.
Na loja: o banco de pedidos volta ao estado de antes do erro, sem script caseiro.
Alta disponibilidade
Uma réplica em espera, em outra zona, assume se a principal falhar.
Na loja: a falha de uma zona não derruba a venda.
Réplicas de leitura
Cópias que atendem consultas de leitura e aliviam a instância principal.
Na loja: os relatórios de vendas rodam numa réplica, não no banco que recebe pedidos.
Atualizações e correções
O provedor aplica os patches do motor, em janelas de manutenção que você pode escolher.
Na loja: o banco recebe a correção de segurança sem o Isaac acordar de madrugada.
Não confunda
Gerenciado × instalado na VM
Banco gerenciado (managed database)
“Quero que o provedor cuide de instalação, patches, backup e failover?”
- Exemplo
- O banco de pedidos da loja, com backups automáticos e standby em outra zona.
- Foco
- Menos administração. Você controla dados, esquema e acesso.
Banco na VM
“Preciso de controle total do sistema operacional ou de uma versão que o serviço não oferece?”
- Exemplo
- Um banco com uma extensão que o serviço gerenciado não suporta.
- Foco
- Controle total, e toda a administração fica com você.
Proteção
Backup e restauração
Um backup responde à pergunta: quanto eu perco se algo der errado? Duas medidas ajudam a responder:
- RPO (Recovery Point Objective): quanto dado pode ser perdido, medido em tempo. Com um backup por dia, o RPO é de até 24 horas.
- RTO (Recovery Time Objective): quanto tempo o sistema pode ficar fora do ar até voltar.
Muitos bancos gerenciados guardam também o registro de transações. Com ele, a restauração é pontual: você volta ao segundo anterior ao erro, e não apenas à última cópia diária. Esse recurso reduz o RPO quase a zero.
Disponibilidade
Réplicas
Há dois tipos de réplica, e a diferença importa:
- Réplica de leitura: recebe uma cópia dos dados e atende consultas. Serve para aliviar a carga, e nem sempre assume sozinha quando a principal cai.
- Réplica em espera (standby): existe para a alta disponibilidade. Se a principal falha, ela assume, em geral de forma automática.
Na prática
Escolher a configuração
| Situação | O que fazer |
|---|---|
| Pedidos online, dados críticos, equipe pequena | Banco gerenciado, com standby em outra zona |
| Relatórios pesados que atrapalham os pedidos | Réplica de leitura para os relatórios |
| Dados que precisam ficar em outra região | Backup copiado para outra região |
| Versão de banco que o serviço gerenciado não oferece | Banco na VM, com a administração assumida |
Termos-chave
Seis termos para fixar
Toque no cartão para ver a definição.
Teste rápido
Três perguntas, estilo prova
01
A equipe quer que o provedor faça backups automáticos e troque o servidor sozinho se ele falhar. Qual opção atende?
02
Um DELETE acidental apagou dados importantes. Qual recurso ajuda a voltar ao estado de antes do erro?
03
Um time precisa de uma versão de banco que o serviço gerenciado não oferece. Qual caminho faz sentido?
Banco de dados é onde a loja guarda o que mais importa: pedidos, clientes e pagamentos. A pergunta que decide tudo é a mesma de sempre: quem faz o quê. Com um banco gerenciado, o provedor cuida da máquina, dos backups e da troca de servidor. Você continua responsável pelos dados e por quem acessa. O próximo passo é entender o que acontece dentro do sistema que roda esse banco: a memória virtual e os sistemas de arquivos.