小编Ben*_*oyt的帖子

删除 PostgreSQL 表的唯一约束需要 10 多个小时

我们有一个带有相当大表(约 5000 万行)的 PostgreSQL 数据库。该表具有跨多个列的唯一约束,每一列都有索引。对于上下文,我最近删除了表中大约一半的行——旧数据。现在我想简单地删除多列唯一约束,所以我执行了这个 SQL:

alter table my_big_table drop constraint my_constraint_name
Run Code Online (Sandbox Code Playgroud)

但是,我在 10 多个小时前启动了该命令,它仍在运行,没有减弱的迹象。为什么删除约束需要这么长时间?有什么我遗漏的,或者有什么方法可以通过某种进度或状态指示来执行这样的操作?

(我在 Windows 64 位系统上使用 PostgreSQL 9.0,我通常使用 pgAdmin 连接到它,但我也可以使用命令行客户端或以编程方式连接。)

postgresql

8
推荐指数
1
解决办法
9323
查看次数

标签 统计

postgresql ×1