如何在postgres中找到查询锁定表的查询

时间:2014-11-05 05:40:03

标签: postgresql postgresql-9.2

我在postgres日志中有很多行,如下所示:

process 22134 acquired ExclusiveLock on extension of relation 34699881 of database 287114 after 1231.968 ms

如何找到导致此锁定的查询?

1 个答案:

答案 0 :(得分:1)

对于初学者,您可以轻松识别所涉及的关系:

SELECT 34699881::regclass;

当然,在正确的数据库中询问:

SELECT datname FROM pg_database WHERE oid = 287114;

要记录语句,您可以使用设置log_statement = ddl。根据您的设置,这可能会创建相当大的日志输出,并且不适合作为永久设置......