上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
第2章
锁
数据库中的对象是共享的,假如不同的用户同时修改某个对象,就会出现数据错乱,从而破坏数据库的数据一致性,违反事务的隔离性原则。为了满足隔离性的要求,数据库需要实现并发控制机制。
并发控制机制可以采用不同的方法实现,概括地说,可以分成基于封锁的并发控制和基于时间戳的并发控制,不同的数据库在实现并发控制时会根据自身的特点对这两种技术进行改进。PostgreSQL数据库采用两阶段锁(Two Phase Lock,2PL)和MVCC相结合的方法来满足事务的隔离性要求。
本章主要介绍两阶段锁的基本概念,并详细介绍PostgreSQL数据库中的锁及死锁检测的实现方法。