第一部分 安装 2
第1章 破冰之旅 2
1.1原料 2
1.2升级方式的变化 4
1.3环境准备 4
1.3.1主机环境 5
1.3.2使用NTP服务 8
1.3.3网络环境 9
1.3.4配置存储 11
1.4安装 13
1.4.1安装Grid 13
1.4.2安装Database 28
1.4.3创建数据库 34
1.5小结 41
第2章 安装引发的思考 42
2.1怎么有这么多用户和用户组 42
2.1.1老朋友 42
2.1.2集群环境的用户组 46
2.1.3 GI owner和DB owner是否有必要分开 50
2.2 DBCA不识别集群环境的解决办法 51
2.3为什么不配时间服务了 53
2.3.1使用NTP服务 54
2.3.2使用CTSS服务 54
2.3.3 CTSS和NTP的关系 55
2.4 IPMI是什么 55
2.5 ORACLE_BASE和ORACLE_HOME的区别 56
2.5.1 OFA和软件安装 56
2.5.2 ORACLE HOME是共享还是本地 61
2.6 SCAN 61
2.7 HAIP(替代双网卡绑定) 62
2.7.1用ofiicfg无法得到HAIP的信息 66
2.7.2确认ASM使用了HAIP 66
2.7.3确认RDBMS数据库使用HAIP 67
2.8减少机器重启——IO Fencing功能的增强 69
2.9 Grid的卸载 69
2.9.1关闭数据库和资源 70
2.9.2用deinstall 卸载 71
2.9.3卸载后的检查确认 77
2.9.4删除目录 77
2.9.5删除ASM磁盘 77
2.10小结 78
第3章 认识Grid 2.0 79
3.1借我一双慧眼 80
3.1.1 CRSCTL 80
3.1.2 SRVCTL 81
3.2 Clusterware的前世今生 82
3.3 Grid中都有些什么 89
3.4 Grid,你好吗 93
3.5小结 97
第二部分 平台 99
第4章 Grid的五脏六腑 99
4.1层次变化 100
4.2基于Agent的管理方式 102
4.3更丰富的资源 105
4.3.1 ohasd 105
4.3.2 ohasd的oraagent 105
4.3.3 ohasd的orarootagent 106
4.3.4 ohasd的cssdagent和cssdmonitor 107
4.3.5 CSSD 107
4.3.6 CRSD 107
4.4 Grid的进程和启动顺序 108
4.5配置文件 111
4.5.1 GPnP(Grid Plug and Play) 112
4.5.2 OLR(Oracle Local Registry) 113
4.5.3 OCR(Oracle Cluster Registry) 114
4.5.4 Voting File 116
4.5.5 OCR\ASM SPfiile\Votingfiile\CRS和ASM的关系总结 118
4.6小结 119
第5章 小荷露峥嵘——ASM 120
5.1 ASM架构 120
5.1.1基础单元—— Extent和 AU 121
5.1.2条带化和镜像 122
5.1.3镜像 123
5.2 Oracle 11g的特性 127
5.2.1全新的ASM文档 128
5.2.2新的SYSASM角色 128
5.2.3 ASM Disk Group Attribute 128
5.2.4兼容性参数 129
5.2.5 ASM Fast Disk Resync(Fast Mirror Resync) 131
5.2.6 ASM Preferred Mirror Read 132
5.2.7可变extent大小 133
5.2.8全新的asmca图形工具 134
5.2.9 ASMCMD命令的增强 134
5.2.10支持集群文件 134
5.2.11 Fast Rebalancing 134
5.2.12智能数据摆放(Intelligent Data Placement IDP) 135
5.3小结 135
第6章 ADVM和ACFS 136
6.1动态扩展 137
6.2 ADVM 138
6.3 ACFS 144
6.3.1 ACFS的用途 145
6.3.2 ACFS的通用文件系统和 ACFS Mount Regist 146
6.3.3创建ACFS 147
6.3.4 ACFS的高级特性 148
6.4小结 149
第7章 SCAN 150
7.1生不逢时的Grid 150
7.2 Oracle 11g才真的是Grid 151
7.2.1认识SCAN 152
7.2.2域名解析(DNS &GNS) 155
7.2.3监听器的变化 158
7.2.4 SCAN的Failover和LB 163
7.3 SCAN的配置和检查 164
7.3.1查看SCAN VIP配置 164
7.3.2查看SCAN VIP状态 164
7.3.3查看SCAN Listener 165
7.3.4查看SCAN Listener的配置 165
7.3.5查看SCAN Listener的状态 165
7.3.6用lsnrctl查看SCAN Listener 165
7.3.7查看本地VIP 166
7.3.8查看本地监听器 167
7.3.9修改SCAN Listener的端口配置 168
7.3.10修改Local Listener的配置 169
7.4小结 170
第8章 RAC Restart和SIHA 171
8.1 Oracle Restart 171
8.1.1 Grid安装在数据库之前 172
8.1.2数据库创建在Grid之前 175
8.1.3使用Oracle Restart的注意事项 179
8.2 Single Instance HA(SIHA) 181
8.2.1资源、profiile、agent、 action script 181
8.2.2使用方法 183
8.2.3 Active/Passive的 Tomcat 184
第三部分 私有云 194
第9章 云端初现的RAC One Node 194
9.1终身制被打破了 194
9.2于是有了RAC One Node 197
9.3 RAC One Node的 特点 198
9.4 RAC One Node实战 201
9.4.1 Oracle Database 11.2.0.1 201
9.4.2 Oracle Database 11.2.0.2 202
9.5 RAC One Node和Instance Caging 214
第10章 被忽略的Service 220
10.1等级仍然是重要的,但也是不易察觉的 221
10.2梦想照进0和1的世界 221
10.3 Service的使用 222
10.3.1要有个好名字 222
10.3.2看出身 223
10.3.3自动注册 223
10.3.4做好规划 224
10.3.5西瓜要检,芝麻也不能丢 226
10.4服务实战 228
10.5资源管理器 234
10.5.1 DRM 235
10.5.2按套路出牌 235
10.5.3辛勤的码农 237
10.5.4聪明的懒人 239
10.5.5不看广告看疗效 244
10.6增强版DRM—Instance Caging 248
10.7 IO校准 248
10.8小结 251
附:SRVCTL操作Service语法 251
第11章 Server Pool——云时代的QoS 254
11.1当整合成为最大动力 254
11.2有了Server Pool 256
11.3排队队 258
11.3.1一仆多主的Generic Pool 259
11.3.2预备役Free Server Pool 262
11.3.3忠心不二的Database Server Pool 263
11.3.4 Child Pool 264
11.4分果果 264
11.5实战Server Pool 265
11.5.1创建 265
11.5.2删除Server Pool 269
11.5.3查看 270
11.6分布规则 271
11.7 Server Pool的完整体验 274
11.7.1重要程度相同 274
11.7.2重要程度不同 280
11.8小结 282
第12章 Policy-Managed Database 283
12.1无法启动的数据库 285
12.2 Service与时俱进 288
12.3 TAF也不甘寂寞 289
12.3.1 Admin的TAF 289
12.3.2 Policy的TAF 294
12.4从Admin到Policy 296
12.5小结 297
第13章 开发人员须知 298
13.1赢在沟通 298
13.1.1渠道畅通 298
13.1.2通信基本靠吼 299
13.1.3 FAN(Fast Application Notifiication) 299
13.2铁三角(HA、 LB与 FAN) 300
13.3使用FAN的方式 304
13.4使用UCP驱动 305
13.5小结 309
第四部分 高可用性 311
第14章 光芒褪尽的Data Guard 311
14.1节省75%的活动数据库复制 311
14.1.1活动数据库复制(Active Database Duplicate) 312
14.1.2可能遇到的错误 322
14.1.3活动复制的要求 328
14.1.4创建DG 329
14.2 DG的增强 331
14.2.1迟来的读写分离(实时查询Standby) 332
14.2.2.快照Standby 336
14.2.3不可错过的RAT (Real Application Testing) 341
14.3小结 361
第15章 ADR、 HM和CHM 362
15.1 ADR 362
15.1.1 ADR的目录结构 363
15.1.2问题和意外 365
15.1.3用DB Control查看 367
15.1.4用命令行查看(ADRCI) 368
15.2数据库健康检查(HM) 373
15.2.1用DB Controle 374
15.2.2用DBMS_HM检查 377
15.3 OS实时监控(CHM) 377
15.3.1 CHM服务 378
15.3.2 CHM Repository 379
15.3.3 CHM数据收集 379
15.4如何查看CHM数据 380
15.5小结 383
第16章 走下神坛的GG 384
16.1 GG架构 384
16.1.1 Capture(Local Extract)Process 386
16.1.2 Source Trail 386
16.1.3 Data Pump 387
16.1.4 Collector 389
16.1.5 Remote Trail 389
16.1.6发布(复制)(Delivery、Replicat) 389
16.1.7管理器 390
16.1.8组的概念 390
16.1.9进程检查点(checkpoint) 390
16.2环境要求 391
16.2.1源数据库需求 391
16.2.2目标数据库需求 394
16.3安装GG 395
16.3.1创建操作系统用户 395
16.3.2正式安装 395
16.3.3 GG环境的初始化 396
16.4认识GG的目录结构 400
16.5 GGSCI接口 401
16.6小结 401
第17章 GG实战 402
17.1单向复制配置概述 402
17.2准备阶段 403
17.2.1配置数据库用户 403
17.2.2在GGSCI中连接数据库 404
17.2.3配置源数据库日志模式 405
17.2.4配置目标数据库 407
17.2.5 Checkpoint Table 407
17.3配置阶段 409
17.3.1 配置Extract 410
17.3.2 配置Data Pump 418
17.3.3数据的初始加载 422
17.3.4配置Replicat 422
17.4小结 426
第18章 GG高级用法 427
18.1连接到ASM 428
18.1.1 Net8方式连接 428
18.1.2 BEQ方式连接 429
18.1.3 DBLOGREADER 431
18.2 RAC环境的特殊说明 431
18.2.1节点的同步 431
18.2.2使用服务连接RAC数据库 431
18.2.3定义日志线程 433
18.2.4决定连接到ASM的方式 433
18.3数据过滤 433
18.3.1表级别过滤 433
18.3.2列过滤 434
18.3.3行过滤 435
18.3.4数据来源过滤 436
18.4数据映射 437
18.4.1 Extract端的映射 437
18.4.2 Replicat端的映射 438
18.4.3需要谁的数据定义文件 438
18.5值的处理 441
18.5.1最简单的赋值 441
18.5.2复杂的赋值 442
18.6 Trail文件和清理 443
18.7数据压缩 444
18.8小结 446
附录A Grid的静默安装 447
A.1 Grid的静默安装 447
A.2 Database 463
A.3创建数据库 474