了解故障种类和数据库恢复技术.doc.docVIP

  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文档。上传文档
查看更多
自学任务单7—了解故障种类和数据库恢复技术 自学目标 了解故障种类; 了解数据库恢复技术。 相关资料 一、故障种类 尽管数据库系统中采取了各种保护措施来防止数据库的安全性和完整性的破坏,保证并发操作的正确执行,但是计算机系统中的硬件的故障、软件的错误、操作员的失误以及恶意的破坏仍然是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失。 数据库系统中可能发生的故障大致可分以下几类: 1.事务故障 事务故障指事务在运行过程中由于种种原因,如运算溢出、并发事务、发生死锁等,使事务未运行至正常终止点(COMMIT或显式ROLLBACK)就夭折了。 事务故障可能使数据库处于不正确状态,恢复程序要在不影响其他事务运行的情况下,强行回滚该事务,即撤销该事务已经作出的任何对数据库的修改,使得数据库恢复到该事务发生前的状态。 2. 系统故障 系统故障指造成系统停止运转随之要求系统重新启动的事件。如操作系统故障、突然停电、CPU故障等。系统故障致使所有运行的事务都以非正常方式终止,内存中数据库缓冲区的数据全部丢失。 一方面,发生系统故障时,一些尚未完成的事务操作结果可能已部分送入物理数据库,从而造成数据库可能处于不正确的状态。为保证数据一致性,需清除这些事务对数据库的所有修改。即在系统重新启动后让所有非正常终止的事务回滚,强行撤销所有未完成事务。 另一方面,发生系统故障时,有些已经完成的事务可能有部分或者全部操作结果留在缓冲区,尚未写回到磁盘上的物理数据库中,系统故障使得这些事务对数据库的修改部分或全部丢失,使数据库处于不一致状态。因此需将这些事务已提交的结果重新写入数据库,即系统重新启动后需重做所有已提交的事务。 3.介质故障 介质故障指外存故障,如磁盘损坏、磁头碰撞等,使存储在外存中的数据部分丢失或全部丢失。这类故障虽然发生可能性比前两类故障小,但破坏性最大。 二、数据库恢复技术 数据库管理系统必须具有把数据库从错误状态恢复到某一已知正确状态的功能,这一功能称为数据库恢复。数据库系统的恢复功能对系统的可靠程度起着决定性作用,是衡量系统性能优劣的重要指标。 数据库恢复的基本原理可以用一个词来概括:冗余。这就是说,数据库中任何一部分被破坏的或不正确的数据可以根据存储在别处的冗余数据来重建。恢复机制涉及的两个关键问题是:先建立冗余数据,然后利用这些冗余数据实施数据库恢复。建立冗余数据最常用的技术是数据转储和登记日志文件。 1.数据转储 转储是指DBA将整个数据库复制到磁带或另一个磁盘上保存起来的过程,又称备份。这些备用的数据文本称为后备副本或备份文件。一旦数据库遭到破坏,可将后备副本重新装入来恢复数据库。数据转储是数据库恢复中采用的基本技术。 使用备份文件恢复数据库,只能将数据库恢复到备份时的状态,要想恢复到故障发生时的状态,须重做备份后的所有成功事务,将这些事务已提交的结果重新写入数据库。过程如图1所示。 图1 转储恢复 转储是十分耗费时间和资源的,不能频繁进行。DBA应该根据数据库使用情况确定一个适当的转储周期。 转储可分为静态转储和动态转储。 静态转储是在数据库系统没有运行事务时进行的转储操作。即转储操作开始的时刻,数据库处于一致性状态,而转储期间数据库数据不允许任何的存取和修改。静态转储得到的一定是一个数据一致性的副本,该转储方式简单可靠,但转储必须等待正运行的用户事务全部结束才能进行。同样,新的事务必须等待转储结束才能执行,运行效率明显降低。 动态转储是指转储期间允许对数据库数据进行存取或修改,即转储和用户事务可以并发执行。并发执行造成备份文件的数据未必是正确有效的。例如,在转储期间的某个时刻Ta,系统把数据A=50转储到磁盘上,而在下一时刻Tb,某一事务将A改为100。则后备副本上的A已是过时的数据了。因此,须把转储期间各用户事务对数据库的修改操作记录下来,建立日志文件。这样,后备副本加上日志文件就能把数据库恢复到某时刻的正确状态。 2.登记日志文件 日志文件是用来记录事务对数据库的更新操作的文件。不同数据库系统采用的日志文件格式有区别。常用的格式是以记录为单位的日志文件。 以记录为单位的日志文件记录以下信息: (1)事务开始标记(BEGIN TRANSACTION) (2)事务结束标记(COMMIT或ROLLBACK) (3)事务对数据的更新操作,包括操作类型、操作对象、数据原值、数据新值等。 日志文件在数据库恢复中起到十分重要作用,具体为: (1)事务故障恢复和系统故障恢复必须使用日志文件。 (2)在动态转储方式中必须建立日志文件,后备副本和日志文件结合起来才能有效恢复数据库。 (3)在静态转储方式中,也可建立日志文件。当数据库破坏后可重新装入后备副本把数据库恢复到

文档评论(0)

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

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

1亿VIP精品文档

相关文档