编辑推荐
暂无
内容简介
《临危不惧:Oracle11g数据库恢复技术》分为三大部分:恢复的原理、恢复的工具、恢复的具体步骤与实战。第一部分能够让读者领略恢复操作的本质,是其他部分的理论基础,包括“重做日志”、“控制文件”、“补充日志”;第二部分详细地介绍了备份/恢复数据库的工具,包括恢复管理器、恢复编录和数据泵;第三部分以各种数据库损毁场景为例,每一章解决一组特定的问题,其中:第7~11章讨论各种文件(控制文件、数据文件等)遭到不同程度的破坏后,数据库的行为特征及如何将其恢复;第12章探讨如何将数据库恢复至以前的时间点;第13章讨论如何处理各种数据库文件在没有备份时受损的情况;第14章全面介绍了用于恢复人为错误的各种闪回技术:第15章介绍将恢复的单位缩小,精确到数据块级别,以提高恢复效率;第16章介绍一种非常规恢复的方法一挖掘日志。
作者简介
 ; ; ; 包光磊,Todd Bao,Oracle University首席讲师,Oracle University ADF课程亚太首席指导官,Oracle University RAC课程亚太首席指导宫,OCM认证大中华区考官,国内首位11g OCM(Oracle认证数据库大师),国内第二位10g OCM(Oracle认证数据库大师),Oracle认证数据库集群专家,Oracle认证中间件专家,从2004年以来一直致力于为国内大型企业与跨国公司提供Oracle数据库、中间件和ADF的系统培训及咨询服务,对象涵盖各大通信公司、银行、金融、生产制造行业、解决方案供应商等。多次受邀主讲Oracle Open World OU Session及Oracle University大师班中的重要议题,拥有极其丰富的Oracle核心技术和软件的应用、实施、管理和开发经验。于2006年、2007年、2010年与2011年被Oracle公司授予Oracle University年度全球*讲师荣誉称号。
目录
第1章 重做日志(Redo Log)
1.1 功能介绍
1.2 重做记录
1.3 在线重做日志(Online Redo Log)
1.4 检查点
1.5 实例恢复
1.6 归档重做日志
1.7 介质恢复
1.8 本章小结
第2章 控制文件(Control File)
2.1 功能介绍
2.2 数据库标识符(DBID)
2.3 数据库物理结构
2.4 其他信息
2.5 本章小结
第3章 补充日志 (Supplemental Logging)
3.1 功能介绍
3.2 数据库级补充日志
3.2.1 最小补充日志
3.2.2 标识关键字段补充日志
3.3 表级补充日志
3.4 本章小结
第4章 恢复管理器(RMAN)
4.1 RMAN体系结构
4.2 快速恢复区
4.2.1 概念
4.2.2 配置与监控
4.3 通道分配
4.3.1 工作原理
4.3.2 自动分配通道
4.3.3 手动分配通道
4.4 备份集备份
4.4.1 创建备份集
4.4.2 数据文件增量备份
4.5 镜像复制备份
4.6 RMAN备份的优化
4.6.1 备份集优化
4.6.2 镜像复制优化
4.7 安全性
4.8 监控
4.9 备份保留策略
4.10 RMAN资料库
4.11 本章小结
第5章 恢复编录(Recovery Catalog)
5.1 使用编录的原因
5.2 创建编录
5.3 使用编录
5.3.1 注册与同步
5.3.2 RMAN能力的增强
5.4 本章小结
第6章 数据泵(Data Pump)
6.1 目录对象
6.2 导出
6.3 导入
6.4 可传输表空间
6.5 本章小结
第7章 参数文件的备份与还原
7.1 参数文件损坏的后果
7.2 备份
7.2.1 手动备份
7.2.2 自动备份
7.3 恢复
7.3.1 实例启动时发现损坏
7.3.2 实例运行时发现损坏
7.4 本章小结
第8章 控制文件备份与恢复
8.1 控制文件损坏的后果
8.1.1 实例启动时发现损坏
8.1.2 实例运行时发现损坏
8.2 备份控制文件
8.2.1 在线镜像备份
8.2.2 自动备份
8.2.3 手动备份
8.3 恢复控制文件
8.3.1 控制文件备份的时间跨度分类
8.3.2 恢复前的准备
8.3.3 利用在线镜像备份恢复
8.3.4 利用自动备份恢复
8.3.5 利用手动备份恢复
8.3.6 利用历史备份恢复
8.3.7 缺失归档日志情况下的恢复
8.4 以noresetlogs收尾
8.5 本章小结
第9章 关键数据文件备份与恢复
9.1 关键数据文件损坏的后果
9.1.1 SYSTEM表空间数据文件损坏
9.1.2 undo_tablespace数据文件损坏
9.2 备份
9.3 恢复
9.3.1 恢复前的准备
9.3.2 恢复流程
9.4 本章小结
第10章 普通数据文件备份与恢复
10.1 普通数据文件损坏的后果
10.2 备份
10.3 恢复
10.3.1 恢复前的准备
10.3.2 非文件头部损坏后的恢复
10.3.3 文件头部损坏后的恢复
10.4 本章小结
第11章 只读数据文件备份与恢复
11.1 只读数据文件损坏的后果
11.2 备份
11.3 恢复
11.3.1 恢复前的准备
11.3.2 控制文件无损情况下的恢复
11.4 本章小结
第12章 不完全数据库恢复
12.1 工作原理
12.2 被动恢复
12.3 主动恢复
12.4 数据库的化身——Incarnation
12.5 小范围不完全恢复
12.6 本章小结
第13章 无备份情况下的恢复
13.1 恢复密码文件
13.2 恢复参数文件
13.3 无备份恢复控制文件
13.3.1 在线日志无损情况下的重建
13.3.2 在线日志损坏情况下的重建
13.3.3 具有只读数据文件情况下的重建
13.3.4 使用控制文件快照恢复
13.4 恢复数据文件
13.5 恢复临时文件
13.6 恢复在线重做日志
13.7 本章小结
第14章 闪回技术(Flashback)
14.1 闪回查询(Flashback Query)
14.1.1 闪回时间点查询246
14.1.2 闪回版本查询248
14.2 闪回数据归档(Flashback Data Archive)
14.3 闪回事务查询
14.4 闪回事务(Flashback Transaction)
14.5 闪回表(Flashback Table)
14.6 闪回删表(Flashback Drop)
14.7 闪回数据库
14.8 本章小结
第15章 恢复受损的数据块
15.1 示例表物理结构
15.2 数据块完整性定义
15.3 数据块完整性检查
15.3.1 db_block_checking参数
15.3.2 db_block_checksum参数
15.3.3 dbv命令
15.3.4 analyze命令
15.3.5 dbms_repair.check_object存储过程
15.3.6 dbms_hm.run_check存储过程
15.3.7 backup命令
15.4 恢复数据块
15.4.1 数据块级恢复
15.4.2 数据块修复包dbms_repair
15.5 本章小结
第16章 日志挖掘器(LogMiner)
16.1 v$logmnr_contents视图
16.2 使用LogMiner
16.2.1 启用最小补充日志
16.2.2 确定LogMiner字典的位置
16.2.3 注册重做日志
16.2.4 启动挖掘会话
16.2.5 挖掘
16.2.6 关闭挖掘会话
16.3 本章小结
第17章 总结
附录A 数据恢复顾问—— Data Recovery Advisor
附录B 示例数据库主要信息
附录C 测验
附录D 测验答案
媒体评论
现今,无数大型的企业级应用正在使用Oracle数据库,但市场上却鲜有关于Oracle数据库恢复的专业书籍,针对新版本的更是少之叉少。此书的出版可谓为广大从业人员送来了一本“恢复宝典”,作者恰到好处地分配了理论和实践的内容,不仅说明如何做,而且还解释了为什么这么做。相信对于各阶段及各行业的Oracle数据库管理员都会有很大的帮助,从容面对数据库的损坏将不再是难事。
——上海交通大学计算机系教授博士生导师白英彩(《英汉计算机大辞典》主编,生平已被英国IBC《世界名人录》及
美国ABI《世界五千人》等辞书收录)
作者把深奥的数据库核心技术讲解得淋漓尽致,非常全面、实用!根据我十多年从事Oracle系统的实施及咨询经验,关键系统的数据如果发生灾难事故,不仅DBA将面临巨大的身心压力,而且还有可能发生管理层与单位的危机。每当那一刻发生时,人们都迫切希望有一个“英雄”能挺身而出拯救这一切,不管你想不想或者被迫当这个“英雄”,如果深刻领悟、掌握了本书所讲的知识与技能,我相信你一定能做到临危不惧、从容应对!
——Oracle公司资深产品技术顾问刘勇
学习Oracle,只有了解了其内在原理,才能更好地使用Oracle。本书作者正是深入浅出、恰到好处地讲解了Oracle备份与恢复的原理及备份恢复工具的使用方法,相信读者在熟读本书并掌握本书的内容后,一定会更加灵活地使用Oracle备份恢复工具,制订合理的备份方式及策略,举重若轻地处理可能造成数据丢失的各种险境。
——Oracle认证数据库大师李鑫(曾担任Oracle公司资深技术支持)
作为作者曾经的学员,Oracle大家庭的同事及朋友,非常欣喜地能看到此书的出版,本书的理论知识深入浅出。示例丰富且具有很强的操作实用性,凝聚了作者多年的实践经验和教学理论,读者通过阅读本书能真正掌握专业的Oracle数据库备份恢复的知识和技巧。
——Oracle公司资深渠道技术顾问谢伟
免费在线读
目前,我们已经了解到数据库中的任何一个更改操作,比如:DML、DDL命令等均会产生两种不同类型的数据:
(1)重做记录,其目的是确保数据库具有可恢复性。
(2)另一种是被修改的数据块本身(包括撤销数据和真正想要修改的数据),其目的是确保数据库的持久性。
这两类数据的临时存储地点和永久存储地点均不相同。
重做记录记载了该更改需要修改哪些数据块及如何更改,重做记录在日志缓冲中产生,经由LGWR以很高的频率写入在线日志,最后在线日志再由ARCn进程备份为归档日志(参考1.6节“归档重做日志”)。
被修改的数据块,也称脏数据块,为了达到持久保存的目的,走的是另一条截然不同的道路。当重做记录写入日志缓冲之后,进程不必等待LGWR(提交操作除外),直接按照重做记录中变更矢量的指导进行操作,从而产生了脏数据块,临时保存在内存区域——数据库缓存(DatabaseBufferCache)中。这些数据块根据重做记录的RBA按顺序排列在一个称为检查点队列的结构中,然后由后台进程DBWn写入数据文件,数据块从检查点队列中除名,所谓“脏”的状态随即清除,变为“干净”的,即该数据块内存中的状态和数据文件中的状态一致,这样被修改的数据块才得以持久保存。
可是,后台进程DBWn是以相对较慢的频率将脏数据块写入数据文件的,这是出于对数据库性能的考虑,DBWn写的频率不可能像LGWR那样频繁。不但如此,在数据库持久性功能的实现上,Oracle有很多规定,其中一条是:保证重做记录先于对应的脏数据块写入持久层。所以,令同一个更改产生的重做记录为R、脏数据块为D。那么,在LGWR没有把R写入在线日志的情况下,Oracle是不允许:DBWn把D先行写入数据文件的。即便是DBWn首先发出请求,也必须等待LGWR先清空日志缓冲。
这样,数据文件的内容永远没有在线日志的内容更新得快。也可以这样说:在数据库打开的情况下,数据文件永远比在线日志“旧”。
为了标识数据文件“旧”到什么程度,Oracle使用了检查点。检查点是一系列操作的集合,其最终目的是将检查点目标写入数据文件头部和控制文件,检查点目标就是某条重做记录,以其头部中的RBA及SCN表示。
参与检查点的进程主要包括LGWR、DBWn和CKPT,分为两大类型:完全检查点和增量检查点。
发起一次完全检查点主要包括以下步骤:
(1)首先,在日志缓冲中确定当前的(也就是最新的)重做记录,提取其RBA与SCN作为检查点的目标。
(2)LGWR清空日志缓存,将重做记录写入在线日志。
(3)DBWn进程将检查点目标(RBA与SCN)产生的及检查点目标之前产生的脏数据块,按RBA的顺序写入数据文件。
(4)最后,CKPT进程将检查点目标(RBA与SCN)写入数据文件的头部和控制文件。
这样,在数据文件头部的检查点目标(RBA与SCN)便能提供以下两个重要信息:
(1)读取其中的SCN与在线日志中重做记录的SCN比较,就可以知道该数据文件是否需要恢复。检查点目标中的SCN简称检查点SCN。
(2)如果该数据文件需要恢复,RBA用来表示从哪个日志中哪一项重做记录开始恢复。检查点目标中的RBA简称检查点RBA。
完全检查点发生的时机如下:
(1)执行shutdown、shutdown normal、shutdown transactional、shutdownimmediate命令关闭数据库。
(2)执行alter system checkpoint命令。
(3)LGWR切换在线日志,不论是因为日志写满还是执行alter system switch logfile命令。
(4)执行部分表空间维护命令,比如:alter tablespaceoffline|online|begin backup|endbackup|read only|readwrite。但此类完全检查点并不完整,DBWn仅将特定表空间内的所有脏数据块写回到数据文件而已。
完全检查点还可分为高优先级(同步)和低优先级(异步)两种,比如:shutdown(除了shutdown abort)与altersystem checkpoint命令发起就是高优先级的检查点,检查点没有完成,命令不会返回。
……
VIP——临危不惧:Oracle 11g数据库恢复技术 pdf下载声明
本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版