`

Postgresql死锁处理(转)

 
阅读更多

转自:http://www.cnblogs.com/yuluo/p/5695434.html

 

今天遇到Postgresql的一个问题,部分表记录的update一直无效报错,初步判断为锁表,赶紧进行解决。

1. 查询死锁进程列表

select * from pg_stat_activity where waiting='t'

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

2. 解决死锁进程

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)

分享到:
评论

相关推荐

    postgresql查询死锁以及杀死死锁进程sql.txt

    查询sql的死锁进程,查找并杀死。解决生产数据库中卡死的现象。postgresql查询死锁以及杀死死锁进程sql

    PostgreSQL数据库典型故障案例及处理技巧.docx

    一、检测到 ShareLock 死锁处理 在 PostgreSQL 数据库中,ShareLock 是一种锁机制,用于控制并发事务的访问。然而,在某些情况下,ShareLock 可能会导致死锁,导致数据库不可用。下面是一个典型的死锁案例: 错误...

    基于postgresql的并行分布式数据库环境下的死锁检测和恢复机制

    详细讲解了postgresql的死锁检测机制和恢复机制,有关并行分布式环境下的死锁检测和恢复机制

    PostgreSQL中关闭死锁进程的方法

    总的来说,处理PostgreSQL中的死锁需要理解其背后的原理,合理利用管理工具,并适时调整数据库配置以优化性能。定期检查和优化数据库模式,减少不必要的锁定,以及及时处理长时间运行的事务,都是防止死锁的有效策略...

    PostgresQL8.3中文文档

    5. **多版本并发控制(MVCC)优化**: 对MVCC机制进行了优化,减少了死锁的可能性,并提高了事务处理性能。 6. **性能提升**: 包括查询优化器的改进、更快的索引构建和查询执行速度的提升。 ### 三、文档内容 "db_...

    Mastering PostgreSQL 11 2nd.pdf

    读者将学习如何利用事务来确保数据操作的原子性、一致性、隔离性和持久性(ACID属性),以及如何处理并发操作中的死锁问题。 接着,书中会详细介绍索引和查询优化,这是提高数据库性能的关键。PostgreSQL支持多种...

    PostgreSQL15的新特性完整介绍

    为了解决高并发场景下可能遇到的问题,如死锁、串行化延迟等,PostgreSQL 15 在事务隔离级别和锁定机制方面做了大量工作。例如,通过改进共享缓冲区管理器(shared buffer manager)和引入新的锁定协议,减少了事务...

    postgresql-8.3 下载

    4. **序列化隔离级别**: PostgreSQL 8.3 提供了串行化(Serializable)事务隔离级别,这是四种标准隔离级别之一,可以防止死锁和其他并发问题,确保数据一致性。 5. **函数重载**: 这个版本允许在同一模式下定义...

    死锁查找与排除工具

    这种便捷性对于数据库管理员来说非常宝贵,他们无需深入了解工具的内部机制,也能快速定位和处理死锁问题。 标签“SQL 死锁 解除”表明这个工具专注于SQL(Structured Query Language)环境下的死锁问题。SQL是用于...

    Postgresql编程教程(自学).docx_postgresql_

    - **并发控制**:学习锁定机制和死锁避免策略,保证多用户环境下的数据一致性。 ### 6. PostgreSQL开发工具 - **客户端工具**:介绍pgAdmin、psql等常用的PostgreSQL管理工具。 - **编程接口**:了解如何通过各种...

    PostgreSQL修炼之道 从小工到专家.pptx

    * 并发控制:包括锁机制、死锁和并发控制协议等方面。 数据安全与恢复 * 数据安全:包括身份验证、访问控制和加密等方面。 * 数据恢复:包括备份和恢复、故障恢复和数据库维护等方面。 性能调优 * 性能优化:...

    PostgreSQL 9.0 High Performance

    PostgreSQL 9.0 版本在原有的基础上进行了大幅度的性能优化与增强,旨在为用户提供更快的数据处理速度以及更稳定的服务体验。 #### 二、性能提升策略 ##### 1. 索引优化 - **索引类型**:PostgreSQL 支持多种索引...

    PostgreSQL 10 Administration Cookbook源码

    1. **性能优化**:PostgreSQL 10引入了并行查询功能,允许在多核CPU上并行执行某些查询,显著提升了处理大数据集的速度。此外,通过合理的索引策略、统计信息的维护以及查询计划的调整,也能有效提高查询性能。 2. ...

    postgresql实例参考(中文高清PDF)

    5. 并发控制:理解MVCC工作原理,处理死锁,事务隔离级别。 6. 复制与备份:主从复制,逻辑复制,备份与恢复策略。 7. 性能调优:查询优化,统计信息,索引选择,资源调度。 8. 扩展与插件:利用PL/pgSQL编写存储...

    postgresql杂志第0期中文版 最大化postgresql性能

    - **并发连接数**:合理设置max_connections,平衡并发处理能力和服务器资源消耗。 - **事务管理**:了解并优化死锁检测机制,避免长时间运行的事务阻塞其他操作。 ### 5. 日志与监控 - **启用慢查询日志**:记录...

    PostgreSQL 9.6 最新中文文档

    - JSONB数据类型在9.6中得到了加强,支持更高效的查询和索引,使得PostgreSQL在处理JSON数据时更加得心应手。 7. **更细粒度的锁管理**: - 9.6版本提供了更多的锁类型,允许更精细的并发控制,降低了死锁的可能...

    顶级PostgreSQL DBA日常工作分享

    PostgreSQL是一个开放源代码的对象关系数据库系统(ORDBMS),它具有强大的功能和灵活性,支持广泛的SQL标准,并且能够处理大量的数据。作为一个开源数据库,PostgreSQL拥有活跃的社区和丰富的文档资源。 DBA...

    上海 PostgreSQL 培训

    学员将学习如何在 PostgreSQL 中处理事务,确保数据的一致性和完整性,以及如何解决并发问题,如死锁和锁管理。 上海 PostgreSQL 培训 - D3.pdf 可能涵盖索引和性能优化,这对于数据库性能至关重要。索引能够加速...

Global site tag (gtag.js) - Google Analytics