第七章:数据库恢复技术案例
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、恢复的实现技术
• 数据转储——数据库恢复的基本技术
• 转储
– DBA定期的将整个数据库复制到磁带或另一个磁盘 上保存起来的过程 – 这些备用数据文本称为后备或后援副本(backup)
2018/10/15 福州大学阳光学院计算机工程系 18
三、恢复的实现技术
• 转储和恢复
转储 正常运行
Ta Tb Tf
2018/10/15
福州大学阳光学院计算机工程系
22
三、恢复的实现技术
• 登记日志文件
– 日志文件的格式和内容
– 内容:是用来记录事务对数据库的更新操作的文件 – 格式:以记录为单位;以数据块为单位
2018/10/15
福州大学阳光学院计算机工程系
23
三、恢复的实现技术
• 登记日志文件
– 日志文件的格式和内容
2018/10/15
福州大学阳光学院计算机工程系
10
二、故障的种类
• 介质故障(硬故障)
– 外存故障。如磁盘损坏、瞬时强磁场干扰等
– 后果:硬件破坏,外存数据丢失(部分或全部);
发生的可能性小,破坏性最大(破坏数据库) – 恢复策略:DBA重装副本,重新启动日志文件
2018/10/15 福州大学阳光学院计算机工程系 11
– 内容:是用来记录事务对数据库的更新操作的文件 – 格式:以记录为单位;以数据块为单位
2018/10/15
福州大学阳光学院计算机工程系
24
三、恢复的实现技术
• 日志文件内容
– 事务开始标记
– 事务标识符
– 操作的记录标识符
2018/10/15
福州大学阳光学院计算机工程系
25
三、恢复的实现技术
• 日志文件内容
第七章 数据库恢复技术
一、数据库恢复
• 故障是不可避免的
– 计算机硬件故障 – 系统软件和应用软件的错误
– 操作员的失误
– 恶意的破坏
2018/10/15 福州大学阳光学院计算机工程系 2
一、数据库恢复
• 数据库恢复
– 是指当数据库发生故障时,将数据库恢复到正确 一致状态的过程
– 恢复技术是衡量系统优劣的重要指标
13
三、恢复的实现技术
• 恢复操作的基本原理:冗余 – 利用存储在系统其它地方的冗余数据来重建数
据库中已被破坏或不正确的那部分数据
2018/10/15
福州大学阳光学院计算机工程系
14
三、恢复的实现技术
• 恢复的实现技术:复杂 – 一个大型数据库产品,恢复子系统的代码要占
全部代码的10%以上
– 原理简单,实现复杂
• 应定期进行数据转储,制作后备副本。但转储又
是十分耗费时间和资源的,不能频繁进行。
• DBA应该根据数据库使用情况确定适当的转储周 期和转储方法。
2018/10/15
福州大学阳光学院计算机工程系
wenku.baidu.com21
三、恢复的实现技术
• 例:
– 每天晚上进行动态增量转储
– 每周进行一次动态海量转储 – 每月进行一次静态海量转储
2018/10/15
福州大学阳光学院计算机工程系
5
二、故障的种类
• 发生事务故障时,夭折的事务可能已把对数据库 的部分修改写回磁盘
• 恢复策略:
– DBMS的DB恢复程序或用户程序(事务撤销UNDO) – 强行回滚(Rollback)
2018/10/15 福州大学阳光学院计算机工程系 6
二、故障的种类
运行事务
重装后备副本
重新运行事务
恢
2018/10/15
复
福州大学阳光学院计算机工程系 19
三、恢复的实现技术
• 转储的种类
转储状态
动态转储
转储 方式
静态转储
海量转储 动态海量转储 静态海量转储 增量转储 动态增量转储 静态增量转储
2018/10/15
福州大学阳光学院计算机工程系
20
三、恢复的实现技术
二、故障的种类
• 计算机病毒
– 人为的故障或破坏,是一些恶作剧者研制的计算
机程序,能像生物病毒一样繁殖和传播,造成对计
算机系统的危害
2018/10/15
福州大学阳光学院计算机工程系
12
二、故障的种类
• 恢复策略
– 采用病毒疫苗
– 杀毒
– 采用恢复技术(后续将要学习)将其恢复
2018/10/15
福州大学阳光学院计算机工程系
2018/10/15
福州大学阳光学院计算机工程系
3
二、故障的种类
事务内 部故障
系统 故障
介质 故障
计算机 病毒
故障的种类
2018/10/15 福州大学阳光学院计算机工程系 4
二、故障的种类
• 事务故障:事务运行时非正常终止
– 不可预测故障:程序非正常停止。如溢出、死锁等。
– 可预测故障:程序中的回滚语句Rollback
– 在记录上实现的操作
– 数据被修改前的值
– 记录被更改后的值
2018/10/15
福州大学阳光学院计算机工程系
26
三、恢复的实现技术
• 日志文件的作用
– 用来进行事务故障恢复和系统故障恢复,并协助后
备副本进行介质故障恢复
2018/10/15
福州大学阳光学院计算机工程系
27
三、恢复的实现技术
• 登记日志文件的原则
• 系统故障(软故障)
– 造成系统停止运转的任何事件,使系统重新启动。
如CPU故障、OS故障、DBMS崩溃、系统断电等
– 后果:内存数据全部丢失,外存数据未破坏(不破 坏数据库)
2018/10/15 福州大学阳光学院计算机工程系 7
二、故障的种类
2018/10/15
福州大学阳光学院计算机工程系
8
二、故障的种类
2018/10/15 福州大学阳光学院计算机工程系 15
三、恢复的实现技术
• 恢复机制涉及的关键问题
– (1)如何建立备份数据
– (2)如何利用备份数据实施数据库恢复
2018/10/15
福州大学阳光学院计算机工程系
16
三、恢复的实现技术
数据 转储
登记日 志文件
建立备份数据常用的技术
2018/10/15 福州大学阳光学院计算机工程系 17
• 恢复策略:
– 清除尚未完成的事务对数据库的所有修改
• 系统重新启动时,恢复程序要强行撤消(UNDO)
所有未完成事务
2018/10/15
福州大学阳光学院计算机工程系
9
二、故障的种类
• 恢复策略:
– 将缓冲区中已完成事务提交的结果写入数据库
• 系统重新启动时,恢复程序需要重做(REDO)所
有已提交的事务
– 登记的次序严格按并发事务执行的时间次序
– 必须先写日志文件,后写数据库
2018/10/15
福州大学阳光学院计算机工程系
28
二、故障的种类
2018/10/15
福州大学阳光学院计算机工程系
29
三、恢复的实现技术
• 在这两个操作之间可能发生故障
– 如果先写了数据库修改,而在日志文件中没有登记 下这个修改,则以后就无法恢复这个修改了