数据库
首页 > 数据库> > 数据库系统原理 (十一): 并发控制

数据库系统原理 (十一): 并发控制

作者:互联网

参考《数据库系统概论》

目录

问题的产生


不同的多事务执行方式


事务并发执行带来的问题

并发控制概述

并发控制机制的任务

数据库的并发控制以事务为单位


并发操作带来数据的不一致性实例


并发操作带来的数据不一致性

Notation: R ( x ) R(x) R(x): 读数据 x x x; W ( x ) W(x) W(x): 写数据 x x x

丢失修改(Lost Update)

不可重复读(Non-repeatable Read)

读“脏”数据(Dirty Read)

并发控制

封锁

什么是封锁

基本封锁类型

排它锁(Exclusive Locks, X X X 锁)

又称为写锁

共享锁(Share Locks, S S S 锁)

又称为读锁

锁的相容矩阵

在这里插入图片描述

使用封锁机制解决丢失修改问题

在这里插入图片描述

使用封锁机制解决不可重复读问题

在这里插入图片描述

使用封锁机制解决读“脏”数据问题

在这里插入图片描述

活锁和死锁

活锁

死锁


解决死锁的方法

并发调度的可串行性

可串行化调度

可串行化的调度 (一种调度策略)


可串行性 (Serializability)


冲突可串行化调度

冲突操作


可串行化调度的充分条件



两段锁协议


两段锁协议 vs 防止死锁的一次封锁法

封锁的粒度 (Granularity)

封锁粒度

选择封锁粒度原则



多粒度封锁 (Multiple Granularity Locking)

多粒度封锁

多粒度树


多粒度封锁协议

显然这样的检查方法效率很低。为此人们引进了一种新型锁,称为意向锁. 有了意向锁,DBMS 就无需逐个检查下一级结点的显式封锁,进而提高对某个数据对象加锁时系统的检查效率

意向锁 (Intention Lock)


常用意向锁


意向锁的相容矩阵

在这里插入图片描述


锁的强度


具有意向锁的多粒度封锁方法


标签:封锁,十一,事务,T2,调度,T1,并发,数据库系统
来源: https://blog.csdn.net/weixin_42437114/article/details/116305731