欢迎来到天天文库
浏览记录
ID:36778217
大小:308.10 KB
页数:82页
时间:2019-05-10
《《数据库学习》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、高级数据库技术数据恢复技术范昭赋中山大学计算机科学系fanzhf@mail.sysu.edu.cn本课件由汤娜老师编制系统篇数据库完整性数据库恢复技术并发控制数据库安全性数据库恢复技术1事务的基本概念2数据库恢复概述3故障的种类4恢复的实现技术5恢复策略6具有检查点的恢复技术7数据库镜像8小结事务事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位事务的ACID特性:原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持续性(Dur
2、ability)事务的特性保证事务ACID特性是事务处理的任务破坏事务ACID特性的因素多个事务并行运行时,不同事务的操作交叉执行事务在运行过程中被强行停止第七章数据库恢复技术1事务的基本概念2数据库恢复概述3故障的种类4恢复的实现技术5恢复策略6具有检查点的恢复技术7数据库镜像8Oracle的恢复技术9小结2数据库恢复概述故障是不可避免的计算机硬件故障系统软件和应用软件的错误操作员的失误恶意的破坏故障的影响运行事务非正常中断,但不会破坏数据库破坏数据库数据库恢复概述(续)数据库管理系统对故障的对策保证故障发生后,能把数据库中的数
3、据从错误状态恢复到某种逻辑一致的状态保证事务ACIDDBMS提供恢复子系统恢复技术是衡量系统优劣的重要指标恢复算法正常事务处理时,采取措施保证有足够的数据用于故障恢复故障发生后,将数据库内容恢复到某个保证数据库一致性、原子性及持久性的状态数据库恢复技术1事务的基本概念2数据库恢复概述3故障的种类4恢复的实现技术5恢复策略6具有检查点的恢复技术7数据库镜像8小结3故障的种类事务故障系统故障介质故障一、事务故障什么是事务故障某个事务在运行过程中由于种种原因未运行至正常终止点就夭折了事务故障的常见原因输入数据有误运算溢出违反了某些完整性
4、限制某些应用程序出错并行事务发生死锁。。。。事务故障的恢复发生事务故障时,夭折的事务可能已把对数据库的部分修改写回磁盘处理方法预期故障:通过在程序中加判断条件来实现。执行回滚(ROLLBACK)语句来撤销事务。非预期的故障:如由于死锁、运算溢出而被迫撤销的事务等,由系统来撤销事务事务故障的恢复的本质:撤消事务(UNDO)3故障的种类事务故障系统故障介质故障二、系统故障什么是系统故障整个系统的正常运行突然被破坏所有正在运行的事务都非正常终止内存中数据库缓冲区的信息全部丢失外部存储设备上的数据未受影响系统故障的常见原因操作系统或DBM
5、S代码错误操作员操作失误特定类型的硬件错误(如CPU故障)突然停电系统故障的恢复清除尚未完成的事务对数据库的所有修改系统重新启动时,恢复程序要强行撤消(UNDO)所有未完成事务将缓冲区中已完成事务提交的结果写入数据库系统重新启动时,恢复程序需要重做(REDO)所有已提交的事务3故障的种类事务故障系统故障介质故障三、介质故障硬件故障使存储在外存中的数据部分丢失或全部丢失介质故障比前两类故障的可能性小得多,但破坏性大得多介质故障的常见原因硬件故障磁盘损坏磁头碰撞操作系统的某种潜在错误瞬时强磁场干扰介质故障的恢复装入数据库发生介质故障前
6、某个时刻的数据副本重做自此时始的所有成功事务,将这些事务已提交的结果重新记入数据库数据库恢复技术1事务的基本概念2数据库恢复概述3故障的种类4恢复的实现技术5恢复策略6具有检查点的恢复技术7数据库镜像8小结恢复操作的基本原理恢复操作的基本原理:冗余利用存储在系统其它地方的冗余数据来重建数据库中已被破坏或不正确的那部分数据恢复的实现技术:复杂一个大型数据库产品,恢复子系统的代码要占全部代码的10%以上4恢复的实现技术恢复机制涉及的关键问题1.如何建立冗余数据数据转储(backup)登录日志文件(logging)2.如何利用这些冗余数
7、据实施数据库恢复4.1数据转储(备份)一、什么是转储二、转储的用途三、转储方法一、什么是转储转储是指DBA将整个数据库复制到磁带或另一个磁盘上保存起来的过程。这些备用的数据文本称为后备副本或后援副本。二、转储方法1.静态转储与动态转储2.海量转储与增量转储3.转储方法小结1.静态转储在系统中无运行事务时进行转储转储开始时数据库处于一致性状态。转储期间不允许对数据库的任何存取、修改活动优点:实现简单缺点:降低了数据库的可用性转储必须等用户事务结束新的事务必须等转储结束动态转储转储操作与用户事务并发进行转储期间允许对数据库进行存取或修
8、改优点不用等待正在运行的用户事务结束不会影响新事务的运行动态转储的缺点不能保证副本中的数据正确有效动态转储利用动态转储得到的副本进行故障恢复需要把动态转储期间各事务对数据库的修改活动登记下来,建立日志文件后备副本加上日志文件才能把数据库恢复到某一时
此文档下载收益归作者所有