DBAtlas · 数据库运维图谱

显示活动查询和阻塞查询

PostgreSQL会话

命令

SELECT pid, usename, state, wait_event_type, wait_event, pg_blocking_pids(pid) AS blocking_pids, now() - query_start AS duration, left(query, 100) AS query FROM pg_stat_activity WHERE state <> 'idle' AND pid <> pg_backend_pid() ORDER BY duration DESC;

作用

列出所有非 idle 的后端进程、哪些 PID 阻塞了它们以及它们已运行多久。

适用场景

用于诊断锁/阻塞问题和长时间运行的查询。

注意

pg_blocking_pids 在 PostgreSQL 9.6+ 中可用。如果 blocking_pids 数组非空,说明这些 PID 持有锁;必要时取消/终止该 PID。

在 DBAtlas 中打开 →

相关内容