将主键列从 int 更改为 bigint 会在索引完成之前重写索引吗?

Will altering a primary key column from int to bigint rewrite the index before it finishes?

像这样迁移 PostgreSQL 列:

ALTER TABLE my_table ALTER COLUMN id TYPE bigint;

这会在 ALTER TABLE 持续并保持其锁定时重新索引该列吗? 运行 ALTER 之后是否需要 运行 ANALYZE

这条语句将重写table及其所有索引,因此可能需要很长时间,但之后一切都会准备就绪,包括索引。

您应该分析 table,因为没有保留统计数据。