postgreSql锁表问题

下面的sql语句可以看到所有的链接

select
T.PID,
T.STATE,
T.QUERY,
T.WAIT_EVENT_TYPE,
T.WAIT_EVENT,
T.QUERY_START
from
PG_STAT_ACTIVITY T
where
T.DATNAME = '数据库名称'

在查询的结果数据中, status列中存在LOCK/idle in transaction 的就是锁表的执行语句.将这个进行杀死或回滚可以了.

-- PID 上面结果查询的PID
-- 事务回滚
select PG_CANCEL_BACKEND('PID');
-- 杀死一个占用的进程
SELECT pg_terminate_backend(PID);
posted @ 2025-01-23 11:26  wds09  阅读(38)  评论(0)    收藏  举报