首页>参考读物>计算机科学与技术>数据库

Oracle RAC 核心技术详解
作者 : 高斌 著
丛书名 : 数据库技术丛书
出版日期 : 2015-10-30
ISBN : 978-7-111-51830-3
定价 : 99.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 507
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书共包含13章,第一部分:第1章到第9章包含了对集群管理软件的详细介绍,读者可以在这部分找到关于10g CRS 和11g GI 的核心技术的详细介绍,包含了集群的核心组件CSS,CRS以及11gR2新增的OHAS组件和守护进程,同时还包含了诊断集群问题常用的诊断工具介绍。最后,由于从11gR2版本开始ASM已经变成了集群管理软件的一个组件,作者在这部分还介绍了和集群,数据库相关的ASM知识。第二部分:第十章到第十三章包含了RAC 数据库的核心技术—内存融合(Cache Fusion),作者使用了大量的篇幅介绍内存融合技术的核心组件以及工作原理,并且还对RAC相关的性能调优知识进行了的介绍。最后,作者对RAC 中的链接管理和工作负载管理做了详细的解释。

图书特色

本书由Oracle RAC资深专家结合其多年的研究和工作经验撰写而成,不仅系统介绍了RAC的基本原理,同时包含一些测试和实际案例,以帮助读者更好地理解RAC的工作原理,以及如何在实际工作中运用这些知识来解决问题。
本书分为两部分,共13章。第一部分(第1章~第9章)对集群管理软件进行了详细介绍,涵盖关于10g CRS 和11g GI 的核心技术的详细介绍,包含集群的核心组件CSS、CRS以及11gR2新增的OHAS组件和守护进程,同时还包含诊断集群问题常用的诊断工具介绍。此外,由于从11gR2版本开始,ASM已经变成了集群管理软件的一个组件,作者在这部分还介绍了和集群、数据库相关的ASM知识。第二部分(第10章~第13章)讲解RAC 数据库的核心技术——内存融合(Cache Fusion),详细介绍了内存融合技术的核心组件以及工作原理,并且还对RAC相关的性能调优知识进行了介绍,同时作者对RAC 中的连接管理和工作负载管理也做了详细解释。
本书覆盖了RAC的核心技术,而且讲解的也非常准确和精彩,的确是一本难得的好书。相信读者在阅读了本书之后,不仅能够对RAC的核心技术和原理有所了解,在技术上有所收获,而且能够了解Oracle的技术部门是如何分析解决问题的,并在具体的工作中实践和应用本书中的技术、分析方法。
—— 杨依岩 Oracle RAC/Clusterware 全球技术领导小组组长
 
Oracle RAC在通信业务支撑系统中扮演着重要的角色,其运行质量的好坏直接关系着通信运营商的整体服务质量。Allen从事Oracle RAC技术支持工作多年,是Oracle RAC资深专家。如果你是DBA或是数据库技术的相关从业者,可将本书作为职业能力的提升指南。翻阅此书,你会感受到一位执着追求的技术专家,一位善于将复杂技术简单化、生动化的传道者。翻阅此书,你一定有所收获。
—— 杨宝秋 中国联通黑龙江省分公司IT技术总监

高斌先生是Oracle RAC界名副其实的宗师,这本书是其扛鼎之作。与鄙人熟识的多位界内人士读罢此书,皆赞叹不已。本书层层剖析的论述方式令人耳目一新,叹为观止,读完让人心生膜拜,相信一定会令更多读者获益!
—— 郭一军 尖峰在线教育
作者简介






高斌(Allen Gao)首席技术支持工程师(Principal Technical Support Engineer),2007年加入Oracle 大连技术支持中心,对Oracle数据库产品有比较深刻的认识。他主要负责Oracle RAC、Exadata的技术支持工作,擅长在压力环境下处理复杂的数据库技术问题,多次成功解决国内外客户重要系统的技术问题。除了日常的技术支持工作以外,还负责MOS(https://support.oracle.com)网站上 RAC、Exadata 文档的翻译工作,在Oracle公司 内部定期进行数据库相关的知识分享,偶尔也在Oracle 官方博客(https://blogs.oracle.com/Database4CN/)上发表技术文章。目前,他主要致力于Oracle 12C 及 Exadata新特性的研究、知识分享和技术支持工作。

图书前言

实时应用集群(Realtime Application Cluster,RAC)—Oracle 服务器技术的核心产品之一。该产品能够提供优秀的高可用性、灵活性、可扩展性、可测量性。十多年来,已经有成千上万的企业使用RAC 作为企业核心数据库,并将关键应用部署到RAC数据库中,而且这种趋势已经不可逆转。
想一想,自己已经和Oracle打了十几年交道,尤其是近几年,每天都要处理RAC问题,也算积累了一些心得。于是就有了写本专门介绍RAC核心技术的书的想法,接着,这本书就在几个月之后出现了。
作为DBA,尤其是负责维护RAC系统的DBA,如果希望了解RAC的工作原理、各个特性的功能以及管理方法、常见问题的诊断方法,那么本书无疑是很好的选择。如果你是Oracle 数据库技术爱好者,本书也可以帮助你很好地了解Oracle 的集群技术和“神奇”的内存融合技术(Cache Fusion)。当然,本书对应用程序开发人员或者系统设计人员也会有所帮助,因为Oracle 的很多设计理念非常先进,很多地方是值得借鉴的。由于本书着重介绍Oracle RAC的核心技术,其中包含比较多的原理和工作机制描述,如果读者具有一定的Oracle数据库基础知识和性能调优知识,会更容易理解本书的内容。当然,作者也尽量使用朴实的语言来解释相关的原理和工作机制,希望能够满足更多读者的需求。
Oracle RAC 是由集群管理软件和数据库软件两部分构成的: 集群管理软件(在版本10g和11g的第1版中叫CRS(Cluster Ready Service),从11g第2版开始叫GI(Grid Infrastructure))负责提供集群的基础服务并管理所有的应用程序资源;数据库软件负责运行Oracle RAC 数据库并为应用程序提供服务。本书内容也正是按照集群管理软件、数据库软件的顺序来编写的。在本书大部分章节中,作者首先会对涉及的原理部分进行介绍并辅以简单的测试和说明,之后通过一些实际的案例对所介绍的工作原理进行验证,并运用我们学到的知识解决实际问题。另外,虽然11gR2版本的集群管理软件和10gR2版本相比发生了很大的改变,但是很多核心的概念、架构仍然得到了延续,本书也是先从10g版本开始,之后介绍11gR2版本的性能提升和改变。
本书共分两部分,一共13章。第一部分:第1章~第9章,包含了对集群管理软件的详细介绍,读者可以在这部分找到关于11g GI和10g CRS核心技术的详细介绍,以及集群核心组件CSS、CRS和11gR2新增的OHAS组件与守护进程的描述,同时还有诊断集群问题的常用诊断工具的讲解。最后,由于从11gR2版本开始ASM已经变成了集群管理软件的一个组件,所以作者在这部分内容中还介绍了和集群、数据库相关的ASM知识。第二部分:第10章~第13章,包含了RAC 数据库的核心技术—内存融合,作者用大量的篇幅介绍内存融合技术的核心组件以及工作原理,并且还对RAC相关的性能调优知识进行了介绍。最后,作者还讲解了RAC 中的连接管理、工作负载管理知识。

上架指导

计算机\数据库

封底文字

本书覆盖了RAC的核心技术,而且讲解的也非常准确和精彩,的确是一本难得的好书。相信读者在阅读了本书之后,不仅能够对RAC的核心技术和原理有所了解,在技术上有所收获,而且能够了解Oracle的技术部门是如何分析解决问题的,并在具体的工作中实践和应用本书中的技术、分析方法。
——杨依岩,Oracle RAC/Clusterware 全球技术领导小组组长
 
Oracle RAC在通信业务支撑系统中扮演着重要的角色,其运行质量的好坏直接关系着通信运营商的整体服务质量。Allen从事Oracle RAC技术支持多年,是Oracle RAC资深专家。如果你是DBA或是数据库技术的相关从业者,可将本书作为职业能力的提升指南。翻阅此书,你会感受到一位执着追求的技术专家,一位善于将复杂技术简单化、生动化的传道者。翻阅此书,你一定有所收获。
               ——杨宝秋,中国联通黑龙江省分公司IT技术总监
高斌先生是Oracle RAC界名副其实的宗师,这本书是其扛鼎之作。与鄙人熟识的多位界内人士读罢此书,皆赞叹不已。本书层层剖析的论述方式令人耳目一新,叹为观止,读完不仅让人心生膜拜,相信一定会令更多读者获益!
                                —— 郭一军
                               尖峰在线教育

图书序言

序 言 一
2012年,我和Allen在红木城第一次见面,当时他来总部参加RAC Pack 培训,同时也和我们一起处理了美国客户的一些问题。虽然只有短短的两个星期,但我能感觉到Allen是一名出色的工程师,他对RAC的理解给我留下了深刻的印象。在之后的时间里,我仍能接触到Allen处理过的一些关键问题,这进一步印证了我对他的看法。本书覆盖了RAC的核心技术,而且也讲解得非常准确和精彩,的确是一本难得的好书。相信读者在阅读了本书之后,不仅能够对RAC的核心技术和原理有所了解,在技术上有所收获,而且能够了解Oracle的技术部门是如何分析解决问题的,并在具体的工作中实践、应用本书提到的技术和分析方法。

杨依岩
Oracle RAC/Clusterware 全球技术领导小组组长
 



序 言 二 Preface
行者
Oracle 全球技术支持中心在大连成立到现在,8年多的时间过去了。从最初的质疑:大连这个地方有做技术的吗?到后来的肯定:大连不错呀,能够找到懂技术的人。这8年来,有人离开,有人坚守,有人离开又回来。无论怎样,每个人都在历练中不断成长,亲历的人知道,这一切与起点无关,与行动有关。这8年来,好几个人说要写本关于 Oracle 数据库的书,Allen 是将此想法付诸行动的人,而我钦佩有执行力的人。
人们常常羡慕自己所不能的。自己技术不行,就会很羡慕技术能力强的人,喜欢与他们相处,沾沾灵气,所以当 Allen 邀请我为他的新书写序时,我诚惶诚恐。作为一个没有机会成为技术高手的人,缺乏专业的评判力,无法为这本书摇旗呐喊,但有幸与做技术的人相处久了,也会有些心得,现写下来,与大家分享。
聪明与勤奋
勤奋的人对知识如饥似渴,学习起来不惜气力。对初学者来说,这是个优秀的品质,当你分不清什么是重要的、什么是无关紧要的时候,每一个细节都需要关注,要用能吃苦的精神换取量的积累。但对熟练者来说,用力过猛会是瓶颈,忙着积累知识,就会少了思考的时间。因此熟练者要恰到好处地用力,将知识转化为领悟,最终养出处理问题的直觉。
聪明的人对任何新知识都可以很快上手。因为擅长少花力气多办事,常能找到捷径,快速地完成手头的工作,这类人的思维能力强,但耐不住反复实践的寂寞,他们敬佩内功深厚的大师,却偏偏对奇思巧技没有免疫力,学得快却学不深。
用力过猛的问题不难解决,常走捷径却是顽疾。聪明的人需要审视自己的本能反应,反应太快不好,需耐下性子放慢动作,一帧一帧地审视自己,找到症结并加以改变。好在聪明伶俐的人只要过了这一关,前途则不可限量,因此这样的努力也值得了。

专家说的?依据是什么?
在 Oracle公司工作的好处是有机会接触各路专家。最初,觉得专家很厉害,什么都知道。渐渐地,接触的专家多了,虽然对他们敬佩依旧,但是对专家的盲目崇拜却被彻底地根除了。因为专家也会犯错误,专家在解决问题的时候也没有什么独门绝技。在遇到未知的问题时(这是常有的事),他们都是利用已有的知识,通过系统的分析,一步一步地定位问题。
我们习惯寻找答案,懒于思考为什么。我们迷恋知识,畏于亲身实践。一个优秀的工程师不能仅仅满足于见过多少问题,知道多少答案,还要有能力解决未知的问题。学会在已知和未知的边界做有效的思考,要常常问自己,写这篇文档的作者是怎样想到这个解决方案的?这一解决方案的依据是什么?文档中的方案为什么能解决用户的问题?有没有其他的替代方案?这个设计是如何工作的?它为什么要这么设计呢?等等。要学会区分事实和观点,提出观点时要以事实为依据,无论是专家的建议,还是自己的猜测,都要经得起验证。
别想太多,去做就好
常常有工程师对培训寄予厚望,幻想着能获得一本武功秘籍,以成为绝世高手,可惜技术的积累不是速成的。参观台北故宫博物院时,最震撼我的藏品是镂空同心象牙球,它每层的雕花各不相同,每个空心球都可以转动。这个精品是三代人用几十年的时间成就的,这和技术的积累过程是同一个道理。
在某个领域有很高造诣的人均由特殊材料造就,而组成这种特殊材料的基本元素平白无奇,无非是大量的学习和实践,就像钻石不过是由碳元素组成的单质晶体,而在高压高温的环境下成为了金刚不坏之身。
专家不是教出来的。专家需要在实践中成长,需要承担有挑战的工作,拥有反复试错的勇气,通过有效的反馈不断地纠错。在成为专家的过程中,你也许会一路高歌,也许会进两步退一步,也许会在某段时间内停滞不前,无论你把自己想象得过于聪明还是笨拙,时间都会不徐不疾地前行,打磨着浮躁的心,就像我在 Allen 身上看到的一样,他在持续的自我进化中,越来越优秀。

王兰
Oracle全球软件服务(数据库和集成系统)总监

作者简介

高斌 著:暂无简介

图书目录

序言一
序言二
前言
第一部分集群管理软件
第1章 Oracle 集群技术介绍2
1.1 集群技术简介2
1.1.1 高可用集群2
1.1.2 负载均衡集群3
1.1.3高性能计算集群3
1.1.4 share-nothing结构4
1.1.5 share-everything结构4
1.2 Oracle集群技术简介5
1.2.1 Oracle RAC 历史5
1.2.2 小结9
总结10
第2章 安装Oracle 集群11
2.1 安装集群管理软件11
2.1.1 安装前准备11
2.1.2 安装软件12
2.1.3 配置集群13
2.2 安装集群管理软件中的重要部分13
2.2.1 角色任务分离14
2.2.2 中央目录15
2.2.3 cluvfy 工具17
2.2.4 root.sh 脚本20
总结29
第3章 11gR2 集群新增组件30
3.1 OHAS31
3.1.1 集群启动方式31
3.1.2 资源管理方式39
3.1.3 ohasd 管理的资源47
3.2 案例分析55
3.2.1 由于丢失OLR 导致的节点无法启动55法启动56
总结58
第4章 11gR2 集群新增的集群守护进程59
4.1 mdns 59
4.1.1 mdnsd.log60
4.1.2 gpnpd.log61
4.1.3 ohasd.log62
4.2 gpnp63
4.2.1 gpnp wallet63
4.2.2gpnp profile63
4.2.3 gpnpd 守护进程65
4.2.4 gpnpd.log 实例66
4.3 gipc68
4.3.1 gipc 的概念和功能68
4.3.2 gipcd.log 实例69
4.4 DiskMON73
4.5 CTSS73
4.6 cssdagent 和 cssdmonitor77
4.7 案例分析78
4.7.1 由于同一个子网中存在同名集群导致的gpnp 无法启动78
4.7.2 由gipc进程导致的节点无法启动81
总结87
第5章 CSS部分88
5.1 CSS 组件的启动顺序88
5.1.1 ocssd 启动顺序88
5.1.2 cssd 启动日志分析89
5.2 集群心跳机制98
5.2.1 网络心跳98
5.2.2 磁盘心跳100
5.2.3 本地心跳102
5.2.4 集群重新配置场景104
5.2.5 术语和参数简介111
5.3 CSS组管理113
5.3.1 ASM 实例关闭114
5.3.2 ASM 磁盘组被卸载118
5.4 11g CSS新特性120
5.4.1 成员终止升级120
5.4.2 Rebootless Restart124
5.5 案例分析127
5.5.1  AIX 平台上著名的bug 13940331 导致的节点重启问题127
5.5.2 典型的由于丢失网络心跳导致的集群脑裂134
5.5.3 由于OS 性能问题导致的oprocd 进程重启节点138
5.5.4  由于OS 层面的套接字参数设置导致的ORA-29701 错误141
总结145
第6章 CRS 部分146
6.1 CRSD 功能介绍146
6.1.1 10gR2 版本146
6.1.2 11gR2版本172
6.2 案例分析192
6.2.1 由于CVU导致的VIP 无法漂移192
6.2.2 由于著名的bug10058182导致的CRSD挂起195
6.2.3 由于CRSD工作方式导致的数据库实例无法被关闭197
总结203
第7章 Oracle集群管理软件的启动顺序204
7.1 OHAS 层面205
7.2 CSS层面210
7.3 CRSD层面216
7.4 GI的关闭顺序223
7.5 集群的套接字文件和网络验证224
7.5.1 套接字文件225
7.5.2 网络验证226
7.5.3 常用的网络检查命令和输出226
总结230
第8章 集群诊断工具概述231
8.1 diagcollection.pl231
8.1.1 10gR2和11gR1 版本231
8.1.2 11gR2版本232
8.2 orachk233
8.2.1 简介233
8.2.2 安装并运行234
8.2.3 升级检查236
8.2.4 检查报告237
8.3 TFA239
8.3.1 简介239
8.3.2 安装和使用239
8.3.3 手动运行TFA242
8.4 OSWbb242
8.4.1 安装和卸载OSWbb243
8.4.2 配置、运行和停止OSWbb243
8.4.3 OSWbb搜集的信息244
总结246
第9章 ASM基础247
9.1 ASM的功能和架构248
9.1.1 ASM功能248
9.1.2 磁盘组248
9.2 ASM实例254
9.2.1 初始化参数文件254
9.2.2 内存结构255
9.2.3 后台进程256
9.2.4 ASM实例启动顺序256
9.3 数据库和ASM实例通信258
9.3.1 基本概念258
9.3.2 后台进程259
9.3.3 基本操作261
9.4 OCR/VF和ASM磁盘组261
9.4.1 存放方式262
9.4.2 Quorum disk264
9.5 案例分析265
总结270
第二部分 RAC数据库软件
第10章 解析内存融合技术272
10.1 RAC和单实例数据库的区别272
10.1.1 内存结构273
10.1.2 后台进程274
10.1.3 物理数据库275
10.1.4 小结278
10.2 内存融合概念278
10.2.1 全局资源目录278
10.2.2 资源和锁280
10.2.3 主节点284
10.2.4 消息机制286
10.3 内存融合的过程289
10.3.1 非PCM资源的访问过程289
10.3.2 PCM资源的访问过程294
10.4 SCN的传播与log file sync310
10.4.1 SCN的传播方式310
10.4.2 log file sync 等待事件316
10.5 DRM和read mostly317
10.5.1 DRM的基本概念317
10.5.2 DRM过程319
10.5.3 DRM 过程示例320
10.5.4 read mostly325
10.6 案例分析326
10.6.1 DRM性能问题导致的数据库实例崩溃326
10.6.2 内存问题导致的数据库实例崩溃329
总结332
第11章  RAC 数据库的实例管理333
11.1 节点管理333
11.1.1 基本概念333
11.1.2 节点列表334
11.1.3 实例启动和关闭334
11.2 CGS340
11.2.1 实例之间的心跳机制340
11.2.2 数据库的重新配置343
11.2.3 重新配置的类型348
11.2.4 数据库层面的脑裂349
11.3 实例恢复349
11.3.1 阶段1350
11.3.2 阶段2352
11.3.3 阶段3353
11.3.4 lazy remaster353
11.3.5 实例恢复示例353
11.4 LMHB354
11.4.1 LMHB 工作机制354
11.4.2 LMHB终止实例示例355
11.5 案例分析360
总结361
第12章 RAC 性能调优362
12.1 基本概念362
12.1.1 RAC相关的统计信息362
12.1.2 AWR报告中RAC相关的信息364
12.1.3 RAC 相关的等待事件374
12.2 RAC数据库的常见性能问题382
12.2.1 序列导致的性能问题382
12.2.2 索引块争用导致的性能问题388
12.2.3 过多物理读导致的性能问题392
12.2.4 缓存尺寸导致的性能问题395
12.3 11gR2新特性之HM399
12.3.1 基本概念399
12.3.2 HM工作方式399
12.3.3 示例日志输出403
12.4 案例分析406
12.4.1 由于存储问题导致的数据库性能下降406
12.4.2 由于连接风暴导致的数据库性能问题409
总结414
第13章 RAC中的连接管理和工作负载管理415
13.1 数据库连接的基础知识415
13.1.1 连接建立的过程415
13.1.2 配置文件416
13.1.3 数据库参数418
13.1.4 RAC数据库的连接420
13.2 负载均衡430
13.2.1 客户端负载均衡430
13.2.2 服务器端负载均衡431
13.3 连接的故障切换436
13.3.1 连接时故障切换436
13.3.2 已存在连接的故障切换437
总结441
附录A 11gR2 集群安装指南442
附录B 11gR2 集群升级指南475

教学资源推荐
作者: 张玉洁 孟祥武 编著
作者: 何玉洁 编著
作者: [美]拉姆什·沙尔达(Ramesh Sharda) 杜尔森·德伦(Dursun Delen)埃弗瑞姆·特班(Efraim Turban) 著
参考读物推荐
作者: Steve Bobrowske
作者: (美)Jason Price
作者: (美)Lars Bo Vanting,Dirk Schepanek