- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库原理与设计 第2版 工业和信息化普通高等教育“十二五”规划教材 教学课件 杨海霞 第6章 管理数据库
* Y Y N Y N 开始加锁 加锁第1个数据 加锁成功吗? 加锁成功吗? 对第m个表加锁 加锁成功吗? 加锁第2个数据 释放所有已加锁的数据 N …… 一次加锁成功 (1)一次封锁法 * 如表4.8发生死锁的例子,可以通过一次加锁法加以预防。 事务T1启动后,立即对数据R1和R2依次加锁,加锁成功后,执行T1,而事务T2等待。 直到T1执行完后释放R1和R2上的锁,T2继续执行。这样就不会发生死锁。 一次加锁法虽然可以有效地预防死锁的发生,但也存在一些问题。 首先,对某一事务所要使用的全部数据一次性加锁,扩大了封锁的范围,从而降低了系统的并发度。 其次,数据库中的数据是不断变化的,原来不要求封锁的数据,在执行过程中可能会变成封锁对象,所以很难事先精确地确定每个事务所要封锁的数据对象,这样只能在开始扩大封锁范围,将可能要封锁的数据全部加锁,这就进一步降低了并发度,影响了系统的运行效率。 (1)一次封锁法(2) * 顺序加锁法是预先对所有可加锁的数据对象规定一个加锁顺序,每个事务都需要按此顺序加锁,在释放时,按逆序进行。 例如对于表4.8发生的死锁,我们可以规定封锁顺序为R1、R2,事务T1和T2都需要按此顺序加锁。T1先封锁R1,再封锁R2。当T2再请求封锁R1时,因为T1已经对R1加锁,T2只能等待。待T1释放R1后,T2再封锁R1,则不会发生死锁。 顺序加锁法同一次加锁法一样,也存在一些问题。因为事务的封锁请求可以随着事务的执行而动态地决定,所以很难事先确定封锁对象,从而更难确定封锁顺序。即使确定了封锁顺序,随着数据操作的不断变化,维护这些数据的封锁顺序要需要很大的系统开销。 (2)顺序封锁法 * 在数据库系统中,由于可加锁的目标集合不但很大,而且是动态变化的; 可加锁的目标常常不是按名寻址,而是按内容寻址,预防死锁常要付出很高的代价,因而上述两种在操作系统中广泛使用的预防死锁的方法并不很适合数据库的特点。 一般情况下,在数据库系统中,可以允许发生死锁,在死锁发生后可以自动诊断并解除死锁。 (2)顺序封锁法(2) * 数据库系统中诊断死锁的方法与操作系统类似。 (1)超时法 如果一个事务的等待时间超过了规定的时限,就认为发生了死锁。超时后的事务自己回滚并重启。如果确实存在死锁,则卷入死锁的一个或多个事务将超时并回滚,从而使其他事务继续。 (2)等待图法 事务等待图是一个有向图G=(T,U)。T为结点的集合,每个结点表示正运行的事务;U为边的集合,每条边表示事务等待的情况。若T1等待T2,则T1,T2之间画一条T1指向T2的有向边。事务等待图动态地反映了所有事务的等待情况。并发控制子系统周期性地(比如每隔1分钟)检测事务等待图,如果发现图中存在回路,则表示系统中出现了死锁。 4.死锁的诊断与解除 * DBMS的并发控制子系统一旦检测到系统中存在死锁,就要设法解除。通常采用的方法是选择一个处理死锁代价最小的事务,将其撤销,释放此事务持有的所有的锁,使其他事务得以继续运行下去。当然,对撤销的事务所执行的数据修改操作必须加以恢复。 4.死锁的诊断与解除(2) * 数据库的重要特征是它能为多个用户提供数据共享。在多个用户使用同一数据库系统时,要保证整个系统的正常运转,DBMS必须具备一整套完整而有效的安全保护措施。本章从安全性控制、完整性控制、并发性控制和数据库恢复四方面讨论了数据库的安全保护功能。 数据库的完整性是指保护数据库中数据的正确性、有效性和相容性。完整性和安全性是两个不同的概念,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是合法用户的不合语义的数据。这些语义约束构成了数据库的三条完整性规则,即触发条件、约束条件和违约响应。完整性约束条件从使用对象分为值的约束和结构的约束,从约束对象的状态又可分为静态约束和动态约束。 小 结 * 小 结(2) 并发控制是为了防止多个用户同时存取同一数据,造成数据库的不一致性。事务是数据库的逻辑工作单位,并发操作中只有保证系统中一切事务的原子性、一致性、隔离性和持久性,才能保证数据库处于一致状态。并发操作导致的数据库不一致性主要有丢失更新、污读和不可重读三种。实现并发控制的方法主要是封锁技术,基本的封锁类型有排它锁和共享锁两种,三级封锁协议可以有效解决并发操作的一致性问题。对数据对象施加封锁,会带来活锁和死锁问题,并发控制机制可以通过采取一次加锁法或顺序加锁法预防死锁的产生。 数据库的恢复是指系统发生故障后,把数据从错误状态中恢复到某一正确状态的功能。对于事务故障、系统故障和介质故障三种不同的故障类型,DBMS有不同的恢复方法。登记日志文件和数据转储是恢复中常用的技术,恢复的基本原理是利用存储在日志文件和数据库后备副本中的冗余数据来重建数
您可能关注的文档
- 护理学基础第十二章 生命体征的评估与护理 ppt课件.ppt
- 护理研究(本科第三版)第十章护理论文的撰.(精编).ppt
- 护理课脑梗死02 ppt课件.ppt
- 拒绝校园暴力,共建和谐校园11_演讲主持_工作范文_实用文档.ppt
- 招标代理公司招标代理服务方案完整版解读.doc
- 招聘管理(第七章录用)_人力资源管理_经管营销_专业资料.ppt.ppt
- 排球正面双手垫·球说课稿课件.ppt
- 搭纸牌_图文攻略_全通关攻略_高分攻略攻略.ppt.ppt
- 控股权取得日合并会计报表的编制(ppt 31页)-精.ppt
- 政府规制研究 市场失灵与政府规制的一般理论研究.ppt.ppt
- 数据库应用——电子商务 教学课件 ppt 作者 王光明 第九章.ppt
- 数控技术专业英语 第3版 工业和信息化高职高专“十二五”规划教材立项项目 教学课件 闫帅经 卢艳 邢希英 CHAPTER14.ppt
- 整体护理对胆囊及胆总管结石患者三镜联合治疗后的价值分析.doc.doc
- 文明礼仪伴我行为主题班会.doc.doc
- 新PEP人教版小学英语三年级下册-UNIT2-MY-FAMILY我的家....ppt
- 新人教PEP版小学英语六年级上册优秀课件:Unit2 Ways to go to school PartA lets learn.ppt.ppt
- 新人教PEP版小学英语六年级上册优秀课件:unit5 what does he do PartA let’s talk.ppt.ppt
- 新人教PEP版小学英语六年级上册优秀课件:unit5 what does he do PartC.ppt.ppt
- 新人教版(PEP)三年级英语上册Unit1 Hello Part B课件_....ppt.ppt
- 新人教版一年级上册语文《小小的船》ppt课件_图文.ppt
最近下载
- 迅达3300AP电气原理图(中文精简版).pdf VIP
- (精品)《雨人》中英文台词剧本完整版.docx VIP
- 2025-2026学年初中美术八年级上册(2024)岭南版(2024)教学设计合集.docx
- 上市公司应对证券民事索赔100问.pdf VIP
- 【继续教育】水质PH(每日一练).pdf VIP
- Lenovo联想 服务器 ThinkServer TS560 说明书.pdf
- Q/GDW 364-2009《单相智能电能表技术规范》及编制说明.doc VIP
- 社会保障学 高教版 第16章--扶贫开发.ppt VIP
- 《2和5的倍数的特征》省公开课一等奖全国示范课微课金奖PPT课件.pptx VIP
- 甜梦口服液与丁螺环酮治疗广泛性焦虑症的疗效对比.PDF VIP
文档评论(0)