Eu ouvi o administrador do MySQL afirmar que ALTER na tabela MySQL cria uma cópia intermediária da tabela durante a operação (não sei se o tipo de tabela envolvida deveria ser MyISAM ou InnoDB), o que é um problema ao trabalhar em grandes tabelas.
Isso se aplica a ALTER em tabelas de banco de dados PG e tabelas de banco de dados Oracle, respectivamente?
Quais são os mecanismos de alto nível de ALTER (estou especialmente interessado em PG) que podem afetar o banco de dados para tabelas enormes (um banco de dados Postgres herdado que herdei tem uma tabela que pesa quase 400 GB ..., o banco de dados inteiro tem ~ 1 TB)?
Do manual do Postgres:
Adicionando uma coluna:
(grifos meus)
Alterando o tipo de uma coluna:
Observe a parte sobre índices sendo reconstruídos para qualquer alteração de coluna.
Soltando uma coluna: