SELECT * FROM pg_stat_activity
select pid,usename,pg_blocking_pids(pid) as blocked_by,query as blocked_query from pg_stat_activity where cardinality(pg_blocking_pids(pid))> 0;
kill有两种方式,第一种是:
SELECT pg_cancel_backend(PID);
这种方式只能kill select查询,对update、delete 及DML不生效)
第二种是:
SELECT pg_terminate_backend(PID);
这种可以kill掉各种操作(select、update、delete、drop等)操作
本文介绍如何在PostgreSQL中使用SQL语句识别并处理被阻塞的查询,包括通过pg_blocking_pids和pg_stat_activity视图找出被阻塞的查询,以及使用pg_cancel_backend和pg_terminate_backend函数来取消或终止这些查询。
1945

被折叠的 条评论
为什么被折叠?



