Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何获取postgresql数据库中正在运行的查询的状态_Postgresql_Postgresql 8.4 - Fatal编程技术网

如何获取postgresql数据库中正在运行的查询的状态

如何获取postgresql数据库中正在运行的查询的状态,postgresql,postgresql-8.4,Postgresql,Postgresql 8.4,我有一个select查询运行了很长时间。我将如何获得该查询的状态,例如它将运行多长时间?它是否正在从表中访问数据 注意:根据pg_stat_activity查询状态显示为活动状态,而不是等待状态。 就像在Oracle中一样,我们可以看到查询的源/目标和处理状态-postgresql中是否有类似的内容?这还不能完成,但已打开。基于我使用的@Anshu答案: SELECT datname, pid, state, query, age(clock_timestamp(), query_start)

我有一个select查询运行了很长时间。我将如何获得该查询的状态,例如它将运行多长时间?它是否正在从表中访问数据

注意:根据
pg_stat_activity
查询状态显示为活动状态,而不是等待状态。
就像在Oracle中一样,我们可以看到查询的源/目标和处理状态-postgresql中是否有类似的内容?

这还不能完成,但已打开。

基于我使用的@Anshu答案:

SELECT datname, pid, state, query, age(clock_timestamp(), query_start) AS age 
FROM pg_stat_activity
WHERE state <> 'idle' 
    AND query NOT LIKE '% FROM pg_stat_activity %' 
ORDER BY age;
选择datname、pid、state、query、age(clock\u timestamp()、query\u start)作为age
来自pg_统计_活动
何处状态为“空闲”
和查询不类似“%FROM pg_stat_activity%”
按年龄排序;

我们可以在postgres中找到关于数据库的查询日志

select *
from pg_stat_activity
where datname = 'yourdatabasename'

这将提供数据库的活动查询日志。

我需要上述问题中查询的完成时间。pg_stat_activity视图仅提供活动查询、数据库和用户详细信息。pg_stat_活动不包含正在运行的查询的完成时间。