北京邮电大学:《数据库设计与开发》第四章 ORACLE 数据库(4-5)数据库恢复技术(邓芳)

4.5数据库恢复技术 故障分类 存储器结构 恢复与原子性 基于日志的恢复 并发事务的恢复 ·缓冲管理 非易失性存储器丢失信息的故障 · ORACLE恢复
4.5 数据库恢复技术 • 故障分类 • 存储器结构 • 恢复与原子性 • 基于日志的恢复 • 并发事务的恢复 • 缓冲管理 • 非易失性存储器丢失信息的故障 • ORACLE恢复

故障分类 事务故障 逻辑错误:因为某些内部错误条件导致事务不能完 成 系统错误:因为某种错误条件(如死锁)导致数据库系 统终止一个活跃事务 系统崩溃:停电故障或者其他软硬件故障导致系统崩溃. 故障-停止假设:假设非易失性存储器的内容不会因 系统崩溃而破坏 数据库系统通过许多完整性检查来防止磁盘数据 被破坏 磁盘故障:磁头损坏或类似的磁盘故障可能破坏全部或 部分磁盘存储器 假设损坏是可以检测到的:磁盘驱动器使用校验和 来检测故障
故障分类 • 事务故障: – 逻辑错误: 因为某些内部错误条件导致事务不能完 成 – 系统错误: 因为某种错误条件(如死锁)导致数据库系 统终止一个活跃事务 • 系统崩溃: 停电故障或者其他软硬件故障导致系统崩溃. – 故障-停止假设: 假设非易失性存储器的内容不会因 系统崩溃而破坏 • 数据库系统通过许多完整性检查来防止磁盘数据 被破坏 • 磁盘故障: 磁头损坏或类似的磁盘故障可能破坏全部或 部分磁盘存储器 – 假设损坏是可以检测到的: 磁盘驱动器使用校验和 来检测故障

恢复算法 恢复算法是指即使发生故障也能确保数据库一致性和 事务原子性及持久性的技术 恢复算法有两个部分 1.在正常事务处理过程中采取行动来确保有足够的信 息用于从故障恢复 2.在故障发生后采取行动来将数据库内容恢复到一个 确保原子性,一致性和持久性的状态
恢复算法 • 恢复算法是指即使发生故障也能确保数据库一致性和 事务原子性及持久性的技术 • 恢复算法有两个部分 1. 在正常事务处理过程中采取行动来确保有足够的信 息用于从故障恢复 2. 在故障发生后采取行动来将数据库内容恢复到一个 确保原子性, 一致性和持久性的状态

存储器结构 易失性( Volatile存储器: 不能在系统崩溃后保存下来 例如:主存,高速缓存 非易失性( Nonvolatile)存储器 可以在系统崩溃后保存下来 例如:磁盘,磁带,闪存,非易失性RAM(电池供电) 稳定( Stable)存储器: 虚构的能够经受任何故障的存储器 可用多个非易失性介质存储相同的副本来近似
存储器结构 • 易失性(Volatile)存储器: – 不能在系统崩溃后保存下来 – 例如: 主存, 高速缓存 • 非易失性(Nonvolatile)存储器: – 可以在系统崩溃后保存下来 – 例如: 磁盘, 磁带, 闪存, 非易失性RAM (电池供电) • 稳定(Stable)存储器: – 虚构的能够经受任何故障的存储器 – 可用多个非易失性介质存储相同的副本来近似

数据库恢复的目标 保证DB完整性、数据正确、一致: 维持事务的原子性; 故障后状态恢复
数据库恢复的目标 保证DB完整性、数据正确、一致: • 维持事务的原子性; • 故障后状态恢复

恢复的基本原则和方法 基本原则:冗余,重复存储。 方法: (1)周期备份后备副本,对整个DB进行拷贝; (2)建日志,每一次更改作记录; (3)处理: DB已被破坏,先装入备份,再利用两个状态间的 日志作恢复; 如果是错误数据,则可利用日志恢复
恢复的基本原则和方法 基本原则:冗余,重复存储。 方法: (1)周期备份后备副本,对整个DB进行拷贝; (2)建日志,每一次更改作记录; (3)处理: DB已被破坏,先装入备份,再利用两个状态间的 日志作恢复; 如果是错误数据,则可利用日志恢复

使用日志的数据库恢复技术 日志:日志是记录事务对DB操作的相关信息 基于记录项日志,一般记录更新操作(插入、删除、 修改),包含修改数据项的新值、旧值:
使用日志的数据库恢复技术 日志 :日志是记录事务对DB操作的相关信息。 基于记录项日志,一般记录更新操作(插入、删除、 修改),包含修改数据项的新值、旧值: (事务,数据项,旧 值,新值)

推迟更新技术 1日志记录 (1)事务所有数据库更新操作推迟到提交时执行,先 写日志,最后统一更新; (2)事务所有更新记录必须先写入日志,才能达到提 交点 2故障后恢复: (1)Redo(T)操作:对于日志, 将X值改为V2 幂等性:redo(redo..redo(T).)=redo(T 多次操作和一次操作效果一样
推迟更新技术 1 日志记录 (1)事务所有数据库更新操作推迟到提交时执行,先 写日志,最后统一更新; (2)事务所有更新记录必须先写入日志,才能达到提 交点。 2 故障后恢复: (1)Redo(T)操作:对于日志, 将X值改为V2; 幂等性:redo ( redo…redo(T)..)= redo(T) 多次操作和一次操作效果一样

恢复过程: 1)扫描日志,建立提交事务表,未提交事 务表; (2)对于提交事务表中所有事务T,按在日志 中顺序正向执行redo(T) (3)对于未提交事务表中事务T,放弃T,从日志中 删除
恢复过程: (1)扫描日志,建立提交事务表,未提交事 务表; (2)对于提交事务表中所有事务T,按在日志 中顺序正向执行redo(T); (3)对于未提交事务表中事务T,放弃T,从日志中 删除

即时更新技术 1日志记录 (1)先写日志,再更新,边记边写; (2)事务所有更新日志均已记录,才允许提交 2故障后恢复 (1)undo(T)操作,满足幂等性,redo逆操作: 反向扫描日志,对于记录,将X值改为V 对已插入的新记录进行删除操作,对已删除的进行插入 操作,对修改的数据恢复旧值
即时更新技术 1 日志记录 (1)先写日志,再更新,边记边写; (2)事务所有更新日志均已记录,才允许提交。 2 故障后恢复 (1)undo(T)操作,满足幂等性,redo逆操作: 反向扫描日志,对于记录,将X值改为V1; 对已插入的新记录进行删除操作,对已删除的进行插入 操作,对修改的数据恢复旧值
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第九章 关系查询处理和查询优化.ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第八章 数据库编程.ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第七章 数据库设计(3/3).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第七章 数据库设计(2/3).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第七章 数据库设计(1/3).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第六章 关系数据理论.ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第五章 数据库完整性.ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第四章 数据库安全性.ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第三章 关系数据库标准语言SQL(3/3).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第三章 关系数据库标准语言SQL(2/3).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第三章 关系数据库标准语言SQL(1/3).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第二章 关系数据库(2/2).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第二章 关系数据库(1/2).ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第一章 绪论.ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第十一章 并发控制.ppt
- 中国人民大学:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第十章 数据库恢复技术.ppt
- Excel函数应用500例_TYPE函数.xls
- Excel函数应用500例_N函数.xls
- Excel函数应用500例_NA函数.xls
- Excel函数应用500例_ISTEXT.xls
- 北京邮电大学:《数据库设计与开发》第二章 关系数据库(2/2).ppt
- 北京邮电大学:《数据库设计与开发》第三章 数据库系统设计(邓芳).ppt
- 北京邮电大学:《数据库设计与开发》第四章 ORACLE 数据库(4-1)DBMS结构与功能(邓芳).ppt
- 北京邮电大学:《数据库设计与开发》第四章 ORACLE 数据库(4-6)Oracle数据库的安全管理 (邓芳).ppt
- 北京邮电大学:《数据库设计与开发》第四章 ORACLE 数据库(4-3)事务(邓芳).ppt
- 北京邮电大学:《数据库设计与开发》第四章 ORACLE 数据库(4-4)并发控制 (邓芳).ppt
- 北京邮电大学:《数据库设计与开发》第二章 关系数据库(1/2).ppt
- 北京邮电大学:《数据库设计与开发》第一章 概述(邓芳).ppt
- 清华大学同名教材:精通office2007_第01章 初识Office 2007.ppt
- 清华大学同名教材:精通office2007_第02章 Word 2007的基本操作.ppt
- 清华大学同名教材:精通office2007_第03章 设置文字格式与文本样式.ppt
- 清华大学同名教材:精通office2007_第04章 使用对象修饰文档.ppt
- 清华大学同名教材:精通office2007_第05章 制作特色文档.ppt
- 清华大学同名教材:精通office2007_第06章 编辑技巧与打印输出.ppt
- 清华大学同名教材:精通office2007_第07章 使用Word创建精美文档.ppt
- 清华大学同名教材:精通office2007_第08章 Excel 2007的基本操作.ppt
- 清华大学同名教材:精通office2007_第09章 输入数据与设置格式.ppt
- 清华大学同名教材:精通office2007_第10章 使用对象、公式与函数.ppt
- 清华大学同名教材:精通office2007_第11章 数据管理.ppt
- 清华大学同名教材:精通office2007_第12章 数据分析.ppt