Pular para o conteúdo

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. 1.Expandir: crie a nova coluna; o código passa a gravar nas duas.
  2. 2.Migrar: copie os dados antigos para a nova coluna, em lotes.
  3. 3.Trocar a leitura: o código passa a ler da nova coluna.
  4. 4.Contrair: depois de confirmar, pare de gravar na antiga e remova-a.

Cada passo é um deploy seguro.

Cuidados em tabelas grandes

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
CompartilharWhatsAppLinkedIn

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.