PostgreSQL部署工具pgmi将事务边界置于SQL程序中,而非文件名元数据。它通过首个顶层COMMIT划分原子阶段与自动提交阶段,使CREATE INDEX CONCURRENTLY合法。文章强调锁超时、失败恢复与幂等重跑,并列出六项检查清单,确保部署安全可控。
文章讨论PostgreSQL中ALTER TABLE等模式变更的锁等待问题:即使语句本身很快,若等待ACCESS EXCLUSIVE锁,会阻塞后续所有读取。关键在于锁的获取时间、语句持续时间和事务持有时间。建议设置lock_timeout快速失败,并用NOT VALID约束或CREATE INDEX CONCURRENTLY等弱锁操作,避免长时间阻塞。
PostgreSQL数据库越来越受欢迎,Crunchy Data的我们经常处理超过20TB的数据库,David Christensen和我收集了一些关于管理大表的技巧,包括使用CREATE INDEX CONCURRENTLY功能添加索引,分步操作添加列,先告知Postgres再验证添加约束等。David和我将参加SCaLE的Postgres Days,欢迎大家参加!
完成下面两步后,将自动完成登录并继续当前操作。