首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Greenplum:无法删除/截断表

Greenplum:无法删除/截断表
EN

Stack Overflow用户
提问于 2016-03-10 15:32:35
回答 2查看 1.2K关注 0票数 1

我在Greenplum(4.3.5.1)中有一个表,我想删除最初使用主键约束创建的约束。我试着去做,但是查询已经运行了2-3个小时,我已经取消了它,因为没有其他选择了,

然后我备份并尝试删除表,但查询正在运行2-3个小时,最后我再次取消了查询(当执行drop table query时,它在表pg_depend,pg_class和pg_type上显示RowExclusiveLock )

我刚刚也尝试了截断,但同样的问题

有人能帮上忙吗?原因是什么??解决这个问题的最好方法是什么?

问候

EN

回答 2

Stack Overflow用户

发布于 2016-03-10 16:33:31

最有可能的是你遇到了锁定问题。首先要检查的是pg_locks -它将显示表上的当前锁。我打赌您的表被某个进程锁定了,这就是truncatedrop table挂起的原因。找到阻塞查询并终止它,这样就可以很容易地删除/截断目标表。

以下是对您有帮助的查询:

代码语言:javascript
运行
复制
select * from pg_locks where relation = 'mytablename'::regclass::oid;
票数 5
EN

Stack Overflow用户

发布于 2016-03-10 15:38:05

您应该使用truncate:

代码语言:javascript
运行
复制
TRUNCATE TABLE  table_name;

http://www.postgresql.org/docs/9.1/static/sql-truncate.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35910244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档