postgreSql查看死锁及解决办法

前端之家收集整理的这篇文章主要介绍了postgreSql查看死锁及解决办法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

@H_403_1@1.查看数据库的进程。SELECT * FROM pg_stat_activity WHERE datname='死锁的数据库ID ';
检索出来的字段中,【wating 】字段,数据为t的那条,就是死锁的进程,找到对应的【procpid 】列的值。

@H_403_1@例如:SELECT procpid FROM pg_stat_activity WHERE datname='数据库ID' and waiting ='t';

@H_403_1@2.杀掉进程。

@H_403_1@kill有两种方式,第一种是:
SELECT pg_cancel_backend(PID);
这种方式只能kill select查询,对update、delete 及DML不生效) 第二种是: SELECT pg_terminate_backend(PID); 这种可以kill掉各种操作(select、update、delete、drop等)操作

猜你在找的Postgre SQL相关文章