学历改变命运
24小时客服:4008135555/010-82335555
当前位置:首页 > 笔记串讲 > 《数据库原理》知识点之数据库的并发控制

《数据库原理》知识点之数据库的并发控制

2006年12月30日    来源:   字体:   打印

  数据库的并发控制

  并发控制带来的三类问题

  (1)丢失更新的问题

  (2)不一致分析问题

  (3)“脏数据”的读出。(在数据库技术中,未提交的随后又被撤消的数据为“脏数据”。)

  以上三类问题结合多事务的并行操作进行理解。

  举例

  [例题] 设T1,T2,T3是如下三个事务,其中R为数据库中某个数据项,设R的初值为0.

  T1:R:=R+5

  T2:R:=R*3

  T3:R:=2

  若允许三个事务并行执行,试列出所有可能的正确结果。采用什么手段,可以解决并行调度的不一致问题?

  答:有6种可能的情况

  (1)T1-T2-T3: R=2

  (2)T1-T3-T2: R=6

  (3)T2-T1-T3: R=2

  (4)T2-T3-T1: R=7

  (5)T3-T1-T2: R=21

  (6)T3-T2-T1: R=11

  采用封锁,可以解决并行调度的不一致问题。

  为解决并发控制带来的问题,通常要采用封锁(locking)技术,常用的封锁有:排它型封锁(X封锁)和共享型封锁(S封锁)两种。

  并发控制中,有许多概念都要掌握:封锁,X封锁,S封锁,PX协议,PXC协议,PS协议,PSC协议,活锁,死锁,可串行化调度,不可串行化调度,两段封锁协议

关闭