《大话Oracle RAC集群、高可用性、备份与恢复》以Oracle 10g为基础,对Oracle RAC进行了全面的介绍和分析。全书分为两个部分,共14章,第一部分是集群理论篇,这部分从集群基础知识入手,通过分析集群环境和单机环境的不同,介绍了集群环境的各个组件及其作用,以及集群环境的一些专有技术,包括Oracle Clusterware、Oracle Database、ASM、Cache Fusion等。第二部分是实践篇,每一章都针对RAC的一个知识点展开讲解,包括Oracle Clusterware的维护、HA与LB、备份、恢复、Flashback家族、RAC和Data Guard的结合使用、RAC和Stream的结合使用,最后对ASM进行深入介绍,并给出性能调整的指导思想。
《大话Oracle RAC集群、高可用性、备份与恢复》按照“发现问题→解决问题→实践与理论相结合”的方式进行介绍,首先对现实问题进行分析,然后提供合适的解决方案,最后自然地引出Oracle中的理论知识点,这种讲解方法能够有效地降低阅读难度,帮助读者更好地掌握相关技能。
《大话Oracle RAC集群、高可用性、备份与恢复》可以作为数据库开发人员、数据库管理员、数据库初学者及其他数据库从业人员的工作参考手册,也可以作为大中专院校相关专业师生的参考用书和相关培训机构的培训教材。
张晓明,Oracle OGP,现用网名“石头狗“,名称来自于《和佛陀赏花去》中的故事:狗会因为人随手去出的一个东西茆而追逐,可能是一个骨头,一块肉,一个眼神。甚至是一个石头。警示一定要看清自己在追逐的东西。
上个世纪90年代末毕业于某著名的医科大学,毕业后分配到某著名医院从事治病救人的神圣工作。不幸的是,在大学最后一年的实习中我接触到了老式486,这让我魂牵梦系,再加上IT热潮对一个热血青年的巨大诱惑,我终于在行医3年后削尖了脑袋挤进了IT业。回想当年,身边有好几位来自知名医学院校的朋友和我一样义无反顾地加入IT工程师队伍,不知道这几位朋友现在安否? 我在IT行业中最初是做开发,先后用过C、C++、Java等各种主流和非主流语言,热火朝天的参与过。C++和Java的网土混战,现在回想起来只有一个词评价“幼稚”,不仅是自己幼稚,整个行业也不太成熟。后转从事数据库开发,再转为数据库管理,最终将此定为自己的职业方向。今天,我把这些年来对Oracle数据库的学习和使用心得记录下来,既是对自己的一个阶段总结,也是与所有志同道合的朋友们共同分享。 现任某SP公司数据库团队负责人,负责管理全国20余省市的OLTP以及公司TB级OLAP系统的开发、优化和护。精通数据库管理、备份、恢复、窖灾等设计和规划,特别是高可用、高并发、高压力数据库环境的设计和优化。
第1部分 集群理论篇
第1章 RAC初体验
1.1 本书使用环境
1.1.1 硬件环境
1.1.2 软件环境
1.1.3 本书使用的环境
1.2 如何在PC机上搭建RAC环境
1.2.1 需要下载的软件
1.2.2 安装过程
1.3 任务列表
1.4 规划阶段
1.4.1 确认主机名和3个IP地址
1.4.2 存储方案选型
1.5 实施阶段
1.5.1 主机配置
1.5.2 安装OracleClusterware
1.5.3 安装OracleDatabase
1.5.4 配置Listener
1.5.5 创建ASM
1.5.6 创建数据库
1.6 客户端测试
1.6.1 客户端配置
1.6.2 体验Failover
1.6.3 体验LoadBalance
1.6.4 修改归档模式
第2章 什么是RAC集群
2.1 集群分类
2.2 集群环境的特殊问题
2.2.1 并发控制
2.2.2 健忘症(Amnesia)
2.2.3 脑裂(SplitBrain)
2.2.4 IO隔离(IOFencing)
2.3 RAC集群
2.3.1 存储层
2.3.2 网络层
2.3.3 集群件层
2.3.4 应用层
2.4 小结
第3章 OracleClusterware
3.1 Clusterware和RAC的关系
3.2 OracleClusterware组成
3.2.1 磁盘文件
3.2.2 Clusterware后台进程
3.2.3 网络组件
3.3 Clusterware的日志体系
3.4 小结
第4章 RAC原理
4.1 数据库基本原理
4.1.1 并发访问和数据一致性
4.1.2 事务和隔离级别
4.1.3 Oracle支持的隔离级别
4.2 Oracle单实例的并发控制机制
4.2.1 Lock
4.2.2 数据记录的行级锁
4.2.3 Latch
4.2.4 Latch和Lock对比
4.2.5 进一步理解
4.3 RAC下的并发控制
4.3.1 DLM中资源和锁
4.3.2 Non-CacheFusion资源
4.3.3 CacheFusion资源
4.3.4 GRD(GlobalResourceDirectory)
4.3.5 PCMLock
4.3.6 CacheFusion
4.3.7 RAC并发控制总结
4.4 RAC架构
4.4.1 SGA的变化
4.4.2 后台进程的变化
4.4.3 文件
4.4.4 SCN
4.4.5 CacheFusion、GCS、GES
4.5 RAC和Clusterware的交互
4.5.1 Clusterware层
4.5.2 RAC层
4.6 小结
第5章 存储方案——ASM初步
5.1 Shared-Disk和Shared-Nothing架构
5.2 Oracle10gRAC的存储方案介绍
5.3 ASM架构
5.3.1 ASM实例
5.3.2 文件
5.4 配置ASM
5.4.1 安装位置
5.4.2 创建ASM磁盘
5.4.3 配置ASM实例
5.4.4 创建磁盘组
5.4.5 在数据库中使用ASM的磁盘组
5.5 ASM实例:将数据库迁移到ASM
5.5.1 试验说明
5.5.2 操作步骤
5.5.3 最后验证
5.6 小结
第2部分 实战篇
第6章 RAC维护工具集
6.1 OracleClusterware工具集
6.2 节点层
6.3 网络层
6.4 集群层
6.4.1 crsctl
6.4.2 OCR命令系列
6.5 应用层
6.5.1 crs_stat
6.5.2 onsctl
6.5.3 srvctl
6.5.4 恢复
6.6 小结
第7章 HA和LB
7.1 什么是高可用性
7.2 Failover
7.2.1 Client-SideConnectTimeFailover
7.2.2 TAF(TransparentApplicationFailover)
7.2.3 Client-SideFailover和TAF的对照试验
7.2.4 Server-SideTAF
7.3 OracleClusterwareHA框架
7.3.1 术语介绍
7.3.2 配置命令
7.3.3 完整实例
7.4 LoadBalance
7.4.1 ConnectionBalancing
7.4.2 利用Service分散负载
7.5 测试LoadBalance
7.5.1 通过Listener日志区分路由来源
7.5.2 测试方法
7.5.3 测试过程
7.6 小结
第8章 备份
8.1 概述
8.1.1 备份
8.1.2 恢复
8.1.3 RMAN工具
8.2 使用FlashRecoveryArea
8.2.1 配置FlashRecoveryArea
8.2.2 FlashRecoveryArea的空间监控
8.3 使用RMAN
8.3.1 RMAN工具的使用方法
8.3.2 RMAN配置
8.4 完全备份和增量备份
8.4.1 完全备份
8.4.2 增量备份
8.4.3 其他RMAN命令
8.5 RAC的备份实例
8.6 小结
第9章 恢复
9.1 为什么Oracle数据库能够恢复
9.2 日志
9.2.1 日志线程(RedoThread)
9.2.2 RAC的联机日志
9.3 恢复种类
9.3.1 InstanceRecovery
9.3.2 MediaRecovery
9.3.3 CrashRecovery
9.3.4 OnlineBlockRecovery
9.4 介质恢复
9.4.1 完全恢复
9.4.2 不完全恢复
9.4.3 恢复到单实例
9.5 小结
第10章 其他恢复技术
10.1 数据块恢复
10.2 如何检查数据块一致性
10.2.1 使用初始化参数
10.2.2 DBV工具
10.2.3 Analyze命令
10.2.4 RMAN工具
10.2.5 dbms_repair包
10.3 模拟数据块不一致
10.4 数据块不一致处理办法
10.4.1 收集信息
10.4.2 设计恢复方法
10.4.3 恢复操作
10.5 数据块恢复实例
10.6 Flashback家族介绍
10.7 FlashbackDatabase
10.7.1 FlashbackDatabase架构
10.7.2 启用FlashbackDatabase
10.7.3 FlashbackDatabase
10.7.4 命令和视图
10.8 FlashbackDrop
10.8.1 TablespaceRecycleBin
10.8.2 FlashbackDrop操作
10.8.3 RecyclyBin的维护
10.9 FlashbackQuery和FlashbackTable
10.9.1 Oracle9i的FlashbackQuery
10.9.2 FlashbackVersionQuery
10.9.3 FlashbackTransactionQuery
10.9.4 FlashbackTable
10.9.5 UNDORetntion
10.10 小结
第11章 RAC和DataGuard
11.1 DataGuard介绍
11.1.1 DataGuard架构
11.1.2 日志发送(RedoSend)
11.1.3 日志接收(RedoReceive)
11.1.4 日志应用(RedoApply)
11.1.5 数据保护模式
11.1.6 自动裂隙检测和解决
11.2 RAC和Standby配置实例
11.2.1 RACPrimary和SingleStandby
11.2.2 RACPrimary和RACStandby
11.3 小结
第12章 RAC和StreamReplication
12.1 Stream的工作原理
12.2 DataGuard和Stream对比
12.3 RACStream配置实例
12.3.1 Single(Source)和RAC(Target)
12.3.2 RAC对RAC的复制
12.3.3 STRMMON工具
12.4 小结
第13章 深入ASM
13.1 非ASM的存储结构
13.2 ASM存储结构
13.3 ASM文件系统
13.3.1 ASMMetadata
13.3.2 PhysicalMetadata
13.3.3 VirtualMetadata
13.3.4 DiskRecovery
13.4 条带化(ASMStriping)
13.4.1 ASM文件模板(ASMFileTemplate)
13.4.2 ASM别名(ASMFileAlias)
13.5 RDBMS和ASM之间的交互
13.6 ASM的实例恢复
13.7 ASM和OSFilesystem之间交互
13.7.1 dbms_file_transfer包
13.7.2 RMAN的CONVERT方法
13.7.3 ASM和TTS
13.8 ASM的限制
13.9 小结
第14章 性能与RAC
14.1 RAC的若干特点
14.2 AWR
14.2.1 启用AWR
14.2.2 修改AWR配置
14.2.3 产生AWR报告
14.3 ASH
14.4 SQL调整策略
14.4.1 SQL语句的执行过程
14.4.2 SQL性能调整的基本方法
14.4.3 PL/SQL和SQL
14.5 小结
从2008年2月开始动笔到定稿出版,这本书的编写几乎花费了我10个月的时间,大大超出了最初3个月的计划。这个过程虽然不能说寝食难安,但其中的酸甜苦辣也是如人饮水,冷暖自知,如果一开始就知道要投入这么大精力,我真怀疑自己是否有勇气开始动笔。
回顾自己学习RAC的经历,我对它又爱又恨。因为对技术本身的痴迷加上高“薪”技术的诱惑,所以爱;因为没有能力掌控,所以恨。时至今日,我仍然不敢说自己已完全掌握了RAC,RAC的学习过程是对我所有学习过的IT技术的大复习,包括OS、Network、Storage、Database等,甚至可能还有很多领域我从未涉足。
相信很多对Oracle有一定经验的DBA和我有同样的感觉,RAC比普通的Oracle更难入门。不仅因为比比皆是的晦涩艰深的术语,也不仅因为它覆盖的技术领域太广,更主要的是可用的参考资料太少。我翻遍了所有能够获得的书籍资料,但是这些资料都是从很基本、很琐碎的细节开始,从下到上(BoRom.up)的学习方式是虽然看到了“树”,但是看不到“林”。虽然无树不成林,技术细节总是必要的,但过于琐碎的分解给我造成更大的迷惑,到底RAC的总线是什么?GCS、GES、GRD、PCM这些东西是如何堆砌在一起的?
这段痛苦经历促使我决定以自己的方式讲述RAC的故事,如果大家能在这个旅程中豁然开朗,对我而言将是一件很有趣又备感欣慰的事。
第一次接触Oracle RAC,感觉云里雾里,这本书简直是及时雨! 一直以来,我对Oracle RAC这个概念都停留在“集群”、“高可用”这样的名词层面,感觉离自己很遥远。这次公司项目正好涉及到Oracle RAC的部署和维护,我一下子就慌了。网上搜了很多资料,看得我头晕眼花,各种术语,各种配置,根本理不清头绪。就在我快要放弃的时候,无意间看到了这本书。拿到手的时候,我还是抱着试试看的心态,没想到,这书真的把我从迷茫中拯救出来了!它从最基础的概念讲起,一点一点地剥开RAC的神秘面纱,从集群的架构、节点之间的通信,到各种高可用性方案的原理和实现,都讲得非常透彻。最重要的是,它没有上来就讲一堆晦涩难懂的命令,而是用大量的图示和通俗易懂的语言来解释复杂的概念。我花了两天时间,基本上把RAC的整体架构和核心概念都理解了,感觉脑子里豁然开朗,之前那些模糊的概念一下子都清晰起来了。这本书简直是Oracle RAC入门者的福音,让我不再对这个技术感到畏惧,而是充满了探索的兴趣。
评分终于找到一本能让我彻底理解Oracle RAC的“大牛书”! 我是一名资深的Oracle DBA,在Oracle领域摸爬滚打了多年,也算是有一定的经验。但是,对于Oracle RAC这个集大成者,我总觉得还有些地方不够深入。市面上关于RAC的书籍不少,但我看来看去,总觉得要么太浅显,要么太过于理论化,难以满足我这种追求深度和细节的需求。直到我遇到了这本书,我才真正找到了“归宿”。这本书的作者,用一种极其严谨却又不失灵活的视角,深入剖析了Oracle RAC的每一个细节。无论是集群的内部通信机制,还是各种高可用性特性的实现原理,亦或是备份恢复策略的设计哲学,作者都给出了非常深入的讲解,并且引用的很多案例都非常具有代表性。这本书的优点在于,它不仅仅是告诉你“怎么做”,更重要的是告诉你“为什么这么做”,以及“这样做会有什么后果”。这对于提升一个DBA的全局观和解决复杂问题的能力至关重要。读完这本书,我感觉自己在Oracle RAC领域的知识体系得到了极大的完善,甚至可以说是“脱胎换骨”了。
评分细节决定成败,这本书让我看到了Oracle RAC运维的“匠心”之处。 作为一名在生产环境一线摸爬滚打多年的DBA,我深知一个稳定、高效的Oracle RAC集群对于业务的重要性。然而,RAC的复杂性也常常让人头疼,一个小小的配置错误,就可能导致整个集群的瘫痪。在日常运维中,我经常会遇到一些“疑难杂症”,很多时候查阅官方文档也难以找到满意的答案。这本书恰恰填补了我的这一块知识空白。它不仅讲解了RAC的核心原理,更重要的是,它深入挖掘了RAC的各种“隐藏细节”,以及一些在实际工作中容易被忽视的“最佳实践”。比如,书中关于节点间锁的争用问题,以及如何通过精细化的参数调优来缓解这些问题,就让我茅塞顿开。还有关于RAC集群的健康检查和故障预警,书中给出了一套非常系统性的方法论,让我能够更主动地发现和解决潜在问题。这本书就像一位经验丰富的“老工匠”,将Oracle RAC的每一个组件、每一个配置都讲解得细致入微,让我看到了在看似冰冷的数据库技术背后,蕴含着如此多的“匠心”之处,这对于我提升RAC的运维水平,起到了决定性的作用。
评分从理论到实践,这本书让我对Oracle RAC的理解更上一层楼。 我之前看过几本关于Oracle RAC的书,但总是感觉停留在理论层面,很多东西光看文字很难真正理解。这本书最大的亮点在于,它非常注重实践。在讲解完每个概念之后,都会给出一系列详细的配置步骤和操作示例,而且这些示例非常贴近实际工作场景。我跟着书里的步骤,自己动手搭建了一个小型的RAC环境,从最初的安装配置,到最后的集群验证,每一步都顺畅无比。更让我惊喜的是,书中还讲解了很多常见的故障场景以及排查方法,这对于实际工作中遇到问题时非常有帮助。我以前总是害怕操作,生怕一不小心就把系统搞坏了,但跟着这本书一步步来,我发现原来RAC的配置并没有想象中那么困难,只要掌握了正确的方法和步骤,就能游刃有余。这本书真的让我从一个“理论派”变成了“实践派”,对Oracle RAC的理解不再是纸上谈兵,而是真正地掌握了实操技能。
评分备份与恢复,这项看似枯燥的工作,在本书的讲解下变得生动有趣。 在IT运维工作中,备份与恢复绝对是至关重要的一环,但也是最容易被忽视和敷衍的环节。我以前对备份恢复的理解,就是定期执行一下rman命令,然后存个备份文件就完事了。但这本书让我意识到,备份恢复的背后有着更深层次的学问。它不仅仅是数据的拷贝,更涉及到数据一致性、恢复策略、性能优化等方方面面。书中对Oracle RAC环境下的备份与恢复进行了非常详细的阐述,从RMAN的各种高级特性,到Flashback技术的应用,再到各种灾难恢复方案的设计,都讲解得淋漓尽致。我印象最深的是关于“一致性备份”的讲解,作者用了很多形象的比喻,让我一下子就理解了为什么一致性备份如此重要,以及如何才能实现。读完这部分内容,我感觉自己对备份恢复的理解上升到了一个新的高度,不再只是机械地执行命令,而是能够根据实际情况,设计出更合理、更有效的备份恢复策略,真正做到“有备无患”。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.idnshop.cc All Rights Reserved. 静思书屋 版权所有