跳到正文
原文
Google AI:DEV 作者专属(RSS)· Son Tran·· 2 小时前AI 评分50

PostgreSQL 大表添加 NOT NULL 列:常量默认值、分批回填与 NOT VALID 实测

Adding a NOT NULL Column to a Large PostgreSQL Table: Constant Default, Backfill or NOT VALID

AI 导读

作者在 PostgreSQL 18.3 上对 500 万行、356 MB 的 orders 表实测:常量默认值的 ADD COLUMN NOT NULL 只改目录、约 10 ms 完成,而 gen_random_uuid() 等易变默认值会全表重写、耗时 10.4 秒且全程持 ACCESS EXCLUSIVE 锁。

来源:Google AI:DEV 作者专属(RSS) · dev.to