大话OracleRAC集群


大话OracleRAC集群

文章插图
大话OracleRAC集群【大话OracleRAC集群】书籍,人民邮电出版社出版
基本介绍书名:大话OracleRAC集群
作者:张晓明
ISBN:9787115204158
出版社:人民邮电出版社
版权资讯书 名: 大话OracleRAC集群、高可用性、备份与恢复作 者:张晓明出版社: 人民邮电出版社出版时间: 2009ISBN: 9787115204158开本: 16定价: 65.00 元内容简介全书分为两个部分,共14章,第一部分是集群理论篇,这部分从集群基础知识入手,通过分析集群环境和单机环境的不同,介绍了集群环境的各个组件及其作用,以及集群环境的一些专有技术,包括OracleClusterware、OracleDatabase、ASM、CacheFusion等 。第二部分是实践篇,每一章都针对RAC的一个知识点展开讲解,包括OracleClusterware的维护、HA与LB、备份、恢复、Flashback家族、RAC和DataGuard的结合使用、RAC和Stream的结合使用,最后对ASM进行深入介绍,并给出性能调整的指导思想 。《大话OracleRAC集群、高可用性、备份与恢复》按照“发现问题→解决问题→实践与理论相结合”的方式进行介绍,首先对现实问题进行分析,然后提供合适的解决方案,最后自然地引出Oracle中的理论知识点,这种讲解方法能够有效地降低阅读难度,帮助读者更好地掌握相关技能 。作者简介张晓明OracleOGP,现用网名“石头狗“,名称来自于《和佛陀赏花去》中的故事:狗会因为人随手去出的一个东西茆而追逐,可能是一个骨头,一块肉,一个眼神 。甚至是一个石头 。警示一定要看清自己在追逐的东西 。上个世纪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安装OracleClusterware1.5.3安装OracleDatabase1.5.4配置Listener1.5.5创建ASM1.5.6创建资料库1.6客户端测试1.6.1客户端配置1.6.2体验Failover1.6.3体验LoadBalance1.6.4修改归档模式第2章什幺是RAC集群2.1集群分类2.2集群环境的特殊问题2.2.1并发控制2.2.2健忘症(Amnesia)2.2.3脑裂(SplitBrain)2.2.4IO隔离(IOFencing)2.3RAC集群2.3.1存储层2.3.2网路层2.3.3集群件层2.3.4套用层2.4小结第3章OracleClusterware3.1Clusterware和RAC的关係3.2OracleClusterware组成3.2.1磁碟档案3.2.2Clusterware后台进程3.2.3网路组件3.3Clusterware的日誌体系3.4小结第4章RAC原理4.1资料库基本原理4.1.1并发访问和数据一致性4.1.2事务和隔离级别4.1.3Oracle支持的隔离级别4.2Oracle单实例的并发控制机制4.2.1Lock4.2.2数据记录的行级锁4.2.3Latch4.2.4Latch和Lock对比4.2.5进一步理解4.3RAC下的并发控制4.3.1DLM中资源和锁4.3.2Non-CacheFusion资源4.3.3CacheFusion资源4.3.4GRD(GlobalResourceDirectory)4.3.5PCMLock4.3.6CacheFusion4.3.7RAC并发控制总结4.4RAC架构4.4.1SGA的变化4.4.2后台进程的变化4.4.3档案4.4.4SCN4.4.5CacheFusion、GCS、GES4.5RAC和Clusterware的互动4.5.1Clusterware层4.5.2RAC层4.6小结 第5章存储方案——ASM初步5.1Shared-Disk和Shared-Nothing架构5.2Oracle10gRAC的存储方案介绍5.3ASM架构5.3.1ASM实例5.3.2档案5.4配置ASM5.4.1安装位置5.4.2创建ASM磁碟5.4.3配置ASM实例5.4.4创建磁碟组5.4.5在资料库中使用ASM的磁碟组5.5ASM实例:将资料库迁移到ASM5.5.1试验说明5.5.2操作步骤5.5.3最后验证5.6小结第2部分实战篇第6章RAC维护工具集6.1OracleClusterware工具集6.2节点层6.3网路层6.4集群层6.4.1crsctl6.4.2OCR命令系列6.5套用层6.5.1crs_stat6.5.2onsctl6.5.3srvctl6.5.4恢复6.6小结第7章HA和LB7.1什幺是高可用性7.2Failover7.2.1Client-SideConnectTimeFailover7.2.2TAF(TransparentApplicationFailover)7.2.3Client-SideFailover和TAF的对照试验7.2.4Server-SideTAF7.3OracleClusterwareHA框架7.3.1术语介绍7.3.2配置命令7.3.3完整实例7.4LoadBalance7.4.1ConnectionBalancing7.4.2利用Service分散负载7.5测试LoadBalance7.5.1通过Listener日誌区分路由来源7.5.2测试方法7.5.3测试过程7.6小结第8章备份8.1概述8.1.1备份8.1.2恢复8.1.3RMAN工具8.2使用FlashRecoveryArea8.2.1配置FlashRecoveryArea8.2.2FlashRecoveryArea的空间监控8.3使用RMAN8.3.1RMAN工具的使用方法8.3.2RMAN配置8.4完全备份和增量备份8.4.1完全备份8.4.2增量备份 8.4.3其他RMAN命令8.5RAC的备份实例8.6小结第9章恢复9.1为什幺Oracle资料库能够恢复9.2日誌9.2.1日誌执行绪(RedoThread)9.2.2RAC的在线上日誌9.3恢複种类9.3.1InstanceRecovery9.3.2MediaRecovery9.3.3CrashRecovery9.3.4OnlineBlockRecovery9.4介质恢复9.4.1完全恢复9.4.2不完全恢复9.4.3恢复到单实例9.5小结第10章其他恢复技术10.1数据块恢复10.2如何检查数据块一致性10.2.1使用初始化参数10.2.2DBV工具10.2.3Analyze命令10.2.4RMAN工具10.2.5dbms_repair包10.3模拟数据块不一致10.4数据块不一致处理办法10.4.1收集信息10.4.2设计恢複方法10.4.3恢复操作10.5数据块恢复实例10.6Flashback家族介绍10.7FlashbackDatabase10.7.1FlashbackDatabase架构10.7.2启用FlashbackDatabase10.7.3FlashbackDatabase10.7.4命令和视图10.8FlashbackDrop10.8.1TablespaceRecycleBin10.8.2FlashbackDrop操作10.8.3RecyclyBin的维护10.9FlashbackQuery和FlashbackTable10.9.1Oracle9i的FlashbackQuery10.9.2FlashbackVersionQuery10.9.3FlashbackTransactionQuery10.9.4FlashbackTable10.9.5UNDORetntion10.10小结第11章RAC和DataGuard11.1DataGuard介绍11.1.1DataGuard架构11.1.2日誌传送(RedoSend)11.1.3日誌接收(RedoReceive)11.1.4日誌套用(RedoApply)11.1.5数据保护模式11.1.6自动裂隙检测和解决11.2RAC和Standby配置实例11.2.1RACPrimary和SingleStandby 11.2.2RACPrimary和RACStandby11.3小结第12章RAC和StreamReplication12.1Stream的工作原理12.2DataGuard和Stream对比12.3RACStream配置实例12.3.1Single(Source)和RAC(Target)12.3.2RAC对RAC的複製12.3.3STRMMON工具12.4小结第13章深入ASM13.1非ASM的存储结构13.2ASM存储结构13.3ASM档案系统13.3.1ASMMetadata13.3.2PhysicalMetadata13.3.3VirtualMetadata13.3.4DiskRecovery13.4条带化(ASMStriping)13.4.1ASM档案模板(ASMFileTemplate)13.4.2ASM别名(ASMFileAlias)13.5RDBMS和ASM之间的互动13.6ASM的实例恢复13.7ASM和OSFilesystem之间互动13.7.1dbms_file_transfer包13.7.2RMAN的CONVERT方法13.7.3ASM和TTS13.8ASM的限制13.9小结第14章性能与RAC14.1RAC的若干特点14.2AWR14.2.1启用AWR14.2.2修改AWR配置14.2.3产生AWR报告14.3ASH14.4SQL调整策略14.4.1SQL语句的执行过程14.4.2SQL性能调整的基本方法14.4.3PL/SQL和SQL14.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的故事,如果大家能在这个旅程中豁然开朗,对我而言将是一件很有趣又备感欣慰的事 。