高斯数据库Postgresql死锁和锁表解决方法

解决死锁进方法:

  1. 查询死锁进程列表

select * from pg_stat_activity where waiting='t'

发现有好几条挂起的记录,记录下所有或需要解锁的pid

  1. 解决死锁进程

select pg_cancel_backend('pid值')

解决完后,刷新后测试,恢复正常。

注:如果pg_stat_activity没有记录,可以查询pg_locks这个表中是否有锁定的记录

可以使用pg_cancle_backend()或者pg_terminate_backend()结束锁定的进程。

解决锁表的方法:

--查询是否锁表了

select oid from pg_class where relname='可能锁表了的表'

select pid from pg_locks where relation='上面查出的oid'

--如果查询到了结果,表示该表被锁 则需要释放锁定

select pg_cancel_backend(上面查到的pid)

相关推荐
weixin_4211334111 小时前
django xadmin 结合 minio
数据库·django·sqlite
白云偷星子11 小时前
MySQL笔记14
数据库·笔记·mysql
绵绵细雨中的乡音12 小时前
MySQL 常用函数实操指南:从基础到实战案例
数据库·mysql
凉栀お_13 小时前
MySQL相关知识查询表中内容(第二次作业)
数据库·mysql
ss27314 小时前
手写Spring第7弹:Spring IoC容器深度解析:XML配置的完整指南
java·前端·数据库
PFinal社区_南丞14 小时前
PostgreSQL-10个鲜为人知的强大功能
数据库·后端
misty youth14 小时前
配置openguass 教程(自存)
数据库·ubuntu·华为·openguass
瑞士卷@15 小时前
MyBatis入门到精通(Mybatis学习笔记)
java·数据库·后端·mybatis
白云偷星子15 小时前
MySQL笔记13
数据库·笔记·mysql
施嘉伟15 小时前
静默安装金仓数据库,到底有多简单?
数据库