- 检索出死锁进程的ID
SELECT * FROM pg_stat_activity WHERE datname=’数据库名’ and waiting=’t’;
找到对用的pid列的值
或
select oid from pg_class where relname=’可能锁表了的表’ –oid是每个表隐藏的id
select pid from pg_locks where relation=’上面查出的oid’
- 将进程杀掉
select pg_cancel_backend(“死锁那条数据的pid值”);
运行完后,再次刷新这个表,sql就可顺利执行。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/database/3826.html