ch10 数句库恢复技术.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文档。上传文档
查看更多
第十章 要点 事务 故障及其类型 数据库恢复实现技术 数据库恢复策略 10.1 事务的基本概念 事务(Transaction) 用户定义的一个对数据库读写操作序列,这些操作要么全做要么全不做 一个不可分割的工作单位 数据库恢复和并发控制的基本单位 数据库系统中通常有多个事务并行运行 在关系数据库中,事务可以是一条、一组SQL语句,或整个程序 事务和程序的区别? 程序包含多个事务 SQL语言中定义事务的语句 事务的开始和结束可以由用户显式控制。如果用户没有定义,则由DBMS按缺省规定自动划分事务。 SQL定义事务的语句 Begin transaction(事务开始) Commit(事务提交,正常结束,将更新结果写入磁盘) Rollback(事务回滚,撤销事务中所有已完成的更新) 事务示例 事务的性质(ACID特性) 原子性(Atomicity) 事务中的操作要么都做,要么都不做 (All or None) 一致性(Consistency) 事务执行的结果必须使数据库从一个一致性状态变到另一个一致性状态 与原子性密切相关 隔离性(Isolation) 并发执行的各事务不能相互干扰 持续性/永久性(Durability) 事务一旦提交,它对数据库的更新不再受后继操作或故障的影响 ★ DBMS中事务处理必须保证其ACID特性,这样才能保证数据库中数据的安全和正确 事务型DBMS中必备的机制 事务是恢复和并发控制的基本单位 恢复机制与并发控制机制的提出 事务在运行过程中因某种故障被强行终止,数据库一致性被破坏,需进行恢复 多个事务并行运行时,不同事务的各种操作交叉进行,为保证各事务的执行互不干扰,需进行并发控制 10.2 数据库恢复概述 数据库由于某些故障发生可能会导致数据库被破坏或影响数据库中数据的一致性(或完整性、正确性) 当系统运行过程中发生故障时,数据库恢复技术将数据库从错误状态恢复到某个一致状态(即已知的正确状态),它是数据库可靠性的保证。 数据库恢复机制是衡量某DBMS系统性能的指标之一,对系统可靠性起决定作用,对运行效率有很大影响 10.3 故障的种类 事务内部故障 事务在运行至正常终止点(commit或rollback)前被终止 包括 能由事务所在程序处理的,如条件不满足等 不能由事务所在程序处理的,如运算溢出等 系统故障(system)(软故障) 系统重启、OS故障、DBMS代码错误、掉电等 介质故障(medium)(硬故障) 磁盘损坏、磁头碰撞等 计算机病毒(virus) 各类故障对数据库的可能影响 数据库本身被破坏,使数据库中全部或部分数据丢失 如系统故障、介质故障、计算机病毒等 数据库没有被破坏,但因事务的运行被非正常终止而使数据库数据失去一致性(正确性) 如事务内部故障、系统故障、计算机病毒等 10.4 恢复的实现技术 数据库恢复的基本原理 利用存储在系统别处的冗余数据来重建数据库中已被破坏或不正确的那部分数据 恢复技术的两个关键 如何建立冗余数据 数据转储 登录日志文件 如何利用冗余数据恢复数据库 建立冗余数据的方法一 数据转储:定期进行磁盘备份形成后备副本 具体方法如下示意 由DBA 定义适当的转储周期 如何使用 数据库遭到破坏后可以将后备副本重新装入 重装后备副本只能将数据库恢复到转储时的状态 静态转储 在系统中无运行事务时进行的转储操作 转储开始时数据库处于一致性状态 转储期间不允许对数据库的任何存取、修改活动 得到的一定是一个数据一致性的副本 优点:实现简单 缺点:降低了数据库的可用性 转储必须等待正运行的用户事务结束 新的事务必须等转储结束 动态转储 转储操作与用户事务并发进行 转储期间允许对数据库进行存取或修改 优点 不用等待正在运行的用户事务结束 不会影响新事务的运行 动态转储的缺点 不能保证副本中的数据正确有效 [例]在转储期间的某个时刻Tc,系统把数据A=100转储到磁带上,而在下一时刻Td,某一事务将A改为200。转储结束后,后备副本上的A已是过时的数据了 动态转储 利用动态转储得到的副本进行故障恢复 需要把动态转储期间各事务对数据库的修改活动登记下来,建立日志文件 后备副本加上日志文件才能把数据库恢复到某一时刻的正确状态 海量转储与增量转储 海量转储: 每次转储全部数据库 增量转储: 只转储上次转储后更新过的数据 海量转储与增量转储比较 从恢复角度看,使用海量转储得到的后备副本进行恢复往往更方便 但如果数据库很大,事务处理又十分频繁,则增量转储方式更实用更有效 建立冗余数据的方法二 登记日志文件(Logging) 日志文件:记录事务对数据库的更新操作 以记录为单位的日志文件 事务的开始标记,事务的结束标记 各个事务的所有更新操作 事务标识TransID, 操作类型Updat

文档评论(0)

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

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

1亿VIP精品文档

相关文档