数据库课件--08章-数据恢复技术和并发控制.ppt

数据库课件--08章-数据恢复技术和并发控制.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 数据库恢复和并发控制;本章要点;8.1 事务;8.1.1 事务的基本概念;;示例;8.1.2 事务的性质;;ACID特性可能遭到破坏的因素;8.2 数据库恢复技术;故障是不可避免的 计算机硬件故障 系统软件和应用软件的错误 操作员的失误 恶意的破坏 故障的影响 运行事务非正常中断 破坏数据库;数据库管理系统对故障的对策;8.2.1 故障的种类;1. 事务故障 ;2. 系统故障;系统故障的常见原因;;3. 介质故障;介质故障的常见原因;介质故障的恢复;4. 计算机病毒和人为破坏;8.2.2 恢复的实现技术;故障对数据库的影响;恢复操作的基本原理;恢复机制涉及的关键问题;分类;静态转储 ;动态转储;海量转储与增量转储;2. 登记日志文件;日志文件的内容;日志文件的作用;登记日志文件的原则;8.2.3 故障恢复的策略;1 事务故障的恢复;2 系统故障的恢复;系统的恢复步骤;3 介质故障的恢复;;4. 具有检查点的恢复技术;具有检查点的恢复技术的实现;;;检查点方法的恢复算法;5. 数据库镜像;;数据库镜像的用途;update;update;8.2.4 SQL Server的数据库恢复技术;1. 数据转储策略;2. 数据转储和恢复的SQL语句;;3. SQL Server的检查点;8.3 并发控制;多事务执行方式;(2)交叉并发方式(interleaved concurrency) 事务的并行执行是这些并行事务的并行操作轮流交叉运行 是单处理机系统中的并发方式,能够减少处理机的空闲时间,提高系统的效率;(3)同时并发方式(simultaneous concurrency) 多处理机系统中,每个处理机可以运行一个事务,多个处理机可以同时运行多个事务,实现多个事务真正的并行运行 最理想的并发方式,但受制于硬件环境;8.3.1 并发操作带来的问题;并发操作带来的数据不一致性;1. 丢失修改;2. 不可重复读;三类不可重复读;3. 读“脏”数据;;8.3.2 封锁;1. 封锁的概念;基本封锁类型;2. 封锁协议;2. 封锁协议;2. 封锁协议;3 . 活锁和死锁;活锁;死锁;解决死锁的方法;死锁的预防;死锁的诊断与解除;DBMS对并发事务不同的调度可能会产生不同的结果 什么样的调度是正确的?;可串行化(Serializable)调度 多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的结果相同,称这种调度策略为可串行化的调度 可串行性(Serializability) 是并发事务正确调度的准则 一个给定的并发调度,当且仅当它是可串行化的,才认为是正确调度 ;8.3.4 两段锁协议;例: 事务1的封锁序列: Slock(A)→Slock(B)→Xlock(C)→Unlock(A) →Unlock(C)→Unlock(B) 事务2的封锁序列: Slock(A)→Unlock(A)→Slock(B)→Xlock(C) →Unlock(C)→Unlock(B) 事务1遵守两段锁协议,而事务2不遵守两段协议。;并行执行的所有事务均遵守两段锁协议,则对这些事务的所有并行调度策略都是可串行化的。 所有遵守两段锁协议的事务,其并行执行的结果一定是正确的 事务遵守两段锁协议是可串行化调度的充分条件,而不是必要条件 可串行化的调度中,不一定所有事务都必须符合两段锁协议。;两段锁协议与防止死锁的一次封锁法 一次封锁法要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行,因此一次封锁法遵守两段锁协议 但是两段锁协议并不要求事务必须一次将所有要使用的数据全部加锁,因此遵守两段锁协议的事务可能发生死锁;遵守两段锁协议的事务发生死锁;8.3.5 封锁的粒度;封锁对象可以很大也可以很小 例: 对整个数据库加锁 对某个属性值加锁 封锁对象的大小称为封锁的粒度(Granularity);选择封锁粒度原则;1. 多粒度封锁和多粒度树;多粒度树 以树形结构来表示多级封锁粒度 根结点是整个数据库,表示最大的数据粒度 叶结点表示最小的数据粒度;例:四级粒度树。根结点为数据库,数据库的子结点为关系,关系的子结点为元组。;多粒度封锁协议;对某个数据对象加锁时系统检查的内容;2 意向锁; 例:对任一元组 r 加锁,先对关系R加意向锁 事务T要对关系R加X锁, 系统只要检查根结点数据库和关系R是否已加了不相容的锁, 不需要搜索和检查R中

文档评论(0)

sanshengyuan + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档