Postgresql检查查询是否仍在运行

时间:2016-02-28 17:06:07

标签: postgresql long-running-processes

在我的工作中,我需要在postgresql数据库中构建一个新的连接表,该数据库涉及在两个现有表上进行大量计算。这个过程应该花费很长时间,所以我把它设置为在周五离开前的周末。现在,我想查看查询是否完成。

如何检查INSERT命令是否已完成,而不是在我运行它的计算机上? (不,我不知道要添加多少行。)

2 个答案:

答案 0 :(得分:8)

Select * from pg_stat_activity where state not ilike 'idle%' and query ilike 'insert%'

这将返回查询以insert开头的所有非空闲会话,如果您的查询未在此列表中显示,则它将不再运行。

pg_stat_activity doc

答案 1 :(得分:2)

您可以查看包含所有数据库连接的表pg_stat_activity,包括活动查询,所有者等。

https://gist.github.com/rgreenjr/3637525,有一个可复制的示例,如何查询此类查询。

相关问题