Migrações de banco sem derrubar o sistema
Renomear uma coluna parece trivial — até derrubar o sistema em produção. Veja como mudar o banco de dados sem tirar o sistema do ar.
Por Equipe We Codex3 min de leitura
Mudanças no banco de dados são inevitáveis: novos campos, tabelas reorganizadas, tipos corrigidos. Feitas de uma vez, em tabelas grandes ou com código antigo ainda rodando, elas causam travamentos e erros em produção.
O problema
Durante um deploy, existe um momento em que a versão antiga e a nova do sistema rodam ao mesmo tempo. Se o banco mudar de um jeito que a versão antiga não entende, ela quebra.
O padrão expandir e contrair
Para renomear telefone para celular:
- 1.Expandir: crie a nova coluna; o código passa a gravar nas duas.
- 2.Migrar: copie os dados antigos para a nova coluna, em lotes.
- 3.Trocar a leitura: o código passa a ler da nova coluna.
- 4.Contrair: depois de confirmar, pare de gravar na antiga e remova-a.
Cada passo é um deploy seguro.
Cuidados em tabelas grandes
- Índices criados de forma concorrente para não travar escritas (Índices no banco de dados: a otimização mais barata que você ainda não fez).
- Atualizações em lotes, não um único
UPDATEem milhões de linhas. - Teste com volume real em ambiente de homologação.
Sempre tenha volta
Backup recente e testado antes de migrações importantes (Backup que nunca foi restaurado não é backup).
Em projetos de modernização
Migrar dados de um sistema legado para um novo segue a mesma lógica de ensaios e etapas (Quando refatorar ou reconstruir: guia prático para modernizar sistemas legados sem parar a operação).
A We Codex faz migrações seguras em sistemas web. Fale com a gente.
- Banco de dados
- Migrações
- Deploy
- Resiliência
Resolver de vez, com quem faz isso todo dia
Precisa de uma API ou integração que não caia quando o negócio crescer?
Este artigo mostra o caminho. A implementação sob medida — o detalhe que muda o resultado no seu caso — é o trabalho da We Codex, empresa de engenharia do grupo Wocom.
Continue lendo
Tudo sobre Backend & APIs- Ler artigo
Backend & APIs3 min
Índices no banco de dados: a otimização mais barata que você ainda não fez
Uma consulta que leva 3 segundos pode levar 3 milissegundos com o índice certo. Veja como saber onde faltam índices — e por que índice demais também atrapalha.
- Ler artigo
Segurança3 min
Backup que nunca foi restaurado não é backup
A empresa faz backup todos os dias. Ninguém nunca tentou restaurar. Quando precisar, vai descobrir se ele funciona. Veja como montar backups que salvam de verdade.
- Ler artigo
Negócios3 min
Quando refatorar ou reconstruir: guia prático para modernizar sistemas legados sem parar a operação
O sistema antigo ainda funciona, mas cada mudança é um risco. Refatorar aos poucos ou reconstruir do zero? Um guia para decidir sem parar a operação.