PostgreSQL 8.2.3 中文文档
后退快退章12. 并发控制快进前进

12.1. 介绍

PostgreSQL 为开发者提供了丰富的对数据并发访问进行管理的工具。在内部,PostgreSQL 利用多版本并发控制(MVCC)来维护数据的一致性。这就意味着当检索数据时,每个事务看到的都只是一小段时间之前的数据快照(一个数据库版本),而不是数据的当前状态。这样,如果对每个数据库会话进行事务隔离,就可以避免一个事务看到其它并发事务的更新而导致不一致的数据。

使用多版本并发控制比锁定模型的主要优点是在 MVCC 里,对检索(读)数据的锁请求与写数据的锁请求不冲突,所以读不会阻塞写,而写也从不阻塞读。

在 PostgreSQL 里也有表和行级别的锁定机制,用于给那些无法轻松接受 MVCC 行为的应用。不过,恰当地使用 MVCC 总会提供比锁更好的性能。另外,由应用定义的咨询锁提供了一个获得不依赖于单独事务的锁的机制。


后退首页前进
并发控制上一级事务隔离