第五章数据库保护.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

5.3并发控制四.封锁协议封锁可以保证合理的进行并发控制,保证数据的一致性。在封锁时,要考虑一定的封锁规则,例如,何时开始封锁、封锁多长时间、何时释放等,这些封锁规则称为封锁协议。对封锁方式规定不同的规则,就形成了各种不同的封锁协议。封锁协议在不同程序上对正确控制并发操作提供了一定的保证。上面讲述过的并发操作所带来的丢失更新、污读和不可重读等数据不一致性问题,可以通过三级封锁协议在不同程度上给予解决。第29页,共51页,星期日,2025年,2月5日5.3并发控制1.一级封锁协议规则是:事务T在修改数据对象之前必须对其加X锁,直到事务结束时才释放锁。一级封锁协议可以防止丢失修改。一级封锁协议只有当修改数据时才进行加锁,如果只是读取数据并不加锁,所以它不能防止“污读”和“重读”数据。例:事务T要对A进行修改,因此在读A之前先对A加X锁其它事务必须等待第30页,共51页,星期日,2025年,2月5日5.3并发控制事务T2t1t2t3t4事务T1时间(1)对A加X锁获得(2)读A=16(3)要对A加X锁等待(4)修改A=A-1A=15t6t7t8t5(5)释放对A的X锁(6)(7)(8)(9)等待获得A对X的锁读A=15修改A=A-4写回A=11释放A对X的锁一级封锁协议举例第31页,共51页,星期日,2025年,2月5日5.3并发控制2.二级封锁协议规则是:在一级封锁协议的基础上,另外加上事务T在读取数据R之前必须先对其加S锁,读完后释放S锁。二级封锁协议除了可以防止丢失修改外,还可以防止读“脏”数据。在二级封锁协议协议中,由于事务T读完数据即释放S锁,因此,不能保证可重复读数据。第32页,共51页,星期日,2025年,2月5日5.3并发控制(9)t1t2t3t4事务T1时间事务T2(1)对C加X锁获得(2)读C=50(3)求C=C×2写回C=100要对C加S锁等待(4)t6t7t8t5(5)回滚(6)释放X锁(7)(8)等待等待获得C的S锁读C=50释放C的S锁二级封锁协议举例第33页,共51页,星期日,2025年,2月5日5.3并发控制3.三级封锁协议规则是:在一级封锁协议的基础上,另外加上事务T在读取数据R之前必须先对其加S锁,读完后并不释放S锁,而直到事务T结束才释放。三级封锁协议除了可以防止更新丢失问题和“污读”数据外,还可进一步防止不可重读数据,彻底解决了并发操作所带来的三个不一致性问题。第34页,共51页,星期日,2025年,2月5日5.3并发控制读B=100修改B=B*2写回B=200(3)(7)(1)对A、B分别加S锁获得(2)读A=50,B=100求A+B=150(4)读A=50,B=100求A+B=150(5)将和值写入(6)释放A的锁释放B的锁(8)(9)t1t2t3t4事务T1时间事务T2等待t6t7t8t5等待等待获得B的X锁要对B加X锁等待t9释放对B的X锁三级封锁协议举例第35页,共51页,星期日,2025年,2月5日5.3并发控制总结:X锁(对写数据S锁(对只读数据)不丢失修改(写)不读脏数据(读)可重复读(读)一级事务全程加锁不加√二级事务全程加锁事务开始加,读完即放√√三级事务全程加锁事务全程加锁√√√三个封锁协议的主要区别在于:什么操作需要申请封锁,以及何时释放锁。第36页,共51页,星期日,2025年,2月5日上一页下一页返回首页第五章数据库保护第1页,共51页,星期日,2025年,2月5日第五章数据库安全保护5.1数据库安全性5.2完整性控制5.3并发控制5.4数据库的恢复第2页,共51页,星期日,2025年,2月5日5.1数据库安全性数据库的安全性是指保护数据库,以防止非法使用所造成数据的泄露、更改或破坏。安全性控制的一般方法对有意的非法活动可采用加密存、取数据的方法控制;对有意的非法操作可使用用户身份验证、限制操作权来控制;对无意的损坏可采用提高系统的可靠性和数据备份等方法来控制。第3页,共51页,星期日,2025年,2月5日5.1数据库安全性安全控制模型在计算机系统中,安全措施是一级一级层层设置的,安全控制

文档评论(0)

xiaoyao2022 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档