【数据库系统概论(王珊)】第11章 并发控制

本文详细介绍了数据库并发控制的重要性,阐述了并发操作可能引发的数据不一致性问题,如丢失修改、不可重复读和读“脏”数据。重点讲解了封锁机制,包括排它锁和共享锁,以及三级封锁协议。同时,讨论了死锁的概念、预防方法和诊断解除策略,如超时法和等待图法。最后,提到了两段锁协议在确保并发调度可串行性方面的作用,以及封锁粒度的选择原则和多粒度封锁协议的应用。
摘要由CSDN通过智能技术生成

多事务执行方式

       串行执行、交叉并发方式、同时并发方式

为什么要进行并发控制?

       当多个用户并发地存取数据库时就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据,破坏是事务的一致性和数据库的一致性。所以数据库管理系统必须提供并发控制机制。

数据库管理系统中并发控制机制的责任:

       保证事务的隔离性和一致性,DBMS需要对并发操作进行正确调度。

并发操作带来的数据不一致性主要有:

       丢失修改、不可重复读、读“脏”数据。

并发控制技术:

       封锁。

基本的封锁类型有两种:

       排它锁(写锁、X锁),共享锁(读锁、S锁)。

封锁类型的相容矩阵:

三级封锁协议:

1级封锁协议:

       事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。
       正常结束(COMMIT) 非正常结束(ROLLBACK)
       1级封锁协议可防止丢失修改
       在1级封锁协议中,如果是读数据,不需要加锁的,所以它不能保证可重 复读和不读“脏”数据。

2级封锁协议:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值