故障恢复 事务的.docVIP

  • 8
  • 0
  • 约 6页
  • 2016-12-30 发布于江西
  • 举报
三种数据不一致: 丢失修改: (写—写):一级封锁 读“脏”数据:(写—读):二级封锁 不可重复读: (读—写):三级封锁 一级封锁协议:事务在修改数据之前先对其加X锁,直到事务结束才释放。 二级封锁协议:一级协议的基础上,加上事务读数据之前先对其加S锁,读完后即可释放。 三级封锁协议:一级协议的基础上,加事务读数据之前先对其加S锁,直到事务结束。 三级封锁协议(保持数据的一致性) 两段锁协议(保证并行调度可串行性) 在数据库中为什么要并发控制? 答:数据库是共享资源,通常有许多个事务同时在运行。当多个事务并发地存取数据库时就会产生同时读取和/或修改同一数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性。所以数据库管理系统必须提供并发控制机制。 2 .并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致的情况? 答:并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏’夕数据。 ( l )丢失修改(lost update ) 两个事务 Tl 和T2读入同一数据并修改,T2提交的结果破坏了(覆盖了) Tl 提交的结果,导致 Tl 的修改被丢失。 ( 2 )不可重复读( Non 一 Repeatable Read )

文档评论(0)

1亿VIP精品文档

相关文档