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

标签 postgresql postgresql-8.4

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

注意:根据 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;

关于postgresql - 如何在 postgresql 数据库中获取正在运行的查询的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12641676/

相关文章:

postgresql - 数据库表大小没有按比例减少

node.js - 如何在不模拟 pg 导入的情况下使用 Node.js/Jest 测试 Postgres

postgresql - 触发 .. AFTER 和 BEFORE 特定列已更改

postgresql - 创建一个聚合函数,该函数返回与最大 column2 值关联的 column1 值

postgresql - 无法从 EC2 连接到 PostgreSQL RDS 但在本地主机上工作正常

postgresql - 未找到 Clojure Postgresql 驱动程序

sql - 是否应该通过使用子查询和别名来避免重复聚合函数?

java - 如何在 SQL Developer 4.0 中安装最新的 Postgresql JDBC jar

sql - 将同一个表中的多个列组合成 1 个更长的唯一列?

postgresql - 添加主键 : Table contains duplicated values