高斯数据库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)

相关推荐
倔强的石头_6 分钟前
性能飙升!KingbaseES V9R2C13 Windows安装与优化特性深度实测
数据库
梦里不知身是客116 分钟前
Doris 中主键模型的读时合并模式
数据库·sql·linq
GanGuaGua12 分钟前
MySQL:复合查询
数据库·mysql·oracle
gugugu.13 分钟前
MySQL事务深度解析:从ACID到MVCC的实现原理
数据库·mysql·oracle
DechinPhy17 分钟前
使用Python免费合并PDF文件
开发语言·数据库·python·mysql·pdf
杨了个杨898239 分钟前
PostgreSQL 完全备份与还原
数据库·postgresql
爱吃KFC的大肥羊40 分钟前
Redis持久化详解(一):RDB快照机制深度解析
数据库·redis·缓存
黎明破晓.43 分钟前
Redis
数据库·redis·缓存
Dovis(誓平步青云)1 小时前
《MySQL从入门:基础安装与数据库核心概念全解析》
数据库·mysql
Web极客码1 小时前
如何选择最适合的内容管理系统(CMS)?
java·数据库·算法