O documento discute técnicas para realizar alterações em bancos de dados de produção de forma segura e sem interrupções, como adicionar campos em tabelas grandes de forma gradual através de scripts de atualização e uso de triggers, e a importância da colaboração entre equipes de desenvolvimento e operações.
19. O QUE É IMPORTANTE ENTENDER ...
● Criação de nova coluna “sabe_de_nada_inocente”
● Update gradual dos registros existentes para o valor default “69”
● Definição do valor default para novos registros “69”
20. ALTER TABLE “tabela_mais_acessada_e_mais_gigante”
ADD “sabe_de_nada_inocente” BIGINT;
UPDATE “tabela_mais_acessada_e_mais_gigante”
SET “sabe_de_nada_inocente” = 69
WHERE “id” BETWEEN 1 AND 10000
...
WHERE “id” BETWEEN 10001 AND 20000
...
ALTER TABLE “tabela_mais_acessada_e_mais_gigante”
ALTER “sabe_de_nada_inocente” SET DEFAULT 69;
LEMBRAM DA ALTERAÇÃO BÁSICA?
21. ALGUMAS OUTRAS DICAS ...
● Uso de triggers (INSERT / UPDATE)
● Criação de novas colunas ao invés de modificação de tipos
● Deploy especifíco para remoção de objetos
Sufixo TO_DROP ...