资源名称:Oracle DBA高可用、备份恢复与性能优化
资源目录:
第 1章 RAC真应用集群 1
1.1 单实例数据库并发控制原理 ..... 1
1.1.1 并发访问的数据不一致问题 .... 1
1.1.2 事务以及隔离级别 .. 2
1.1.3 支持并发的 lock机制 ... 3
1.1.4 支持并发的 latch机制 .. 6
1.1.5 Lock和 Latch的使用.... 7
1.2 RAC并发控制的实现.... 8
1.2.1 RAC的并发控制问题... 8
1.2.2 RAC的实现并发访问... 9
1.3 Oracle为何引入 RAC .. 10
1.4 RAC集群简介 .. 11
1.4.1 集群分类 .... 11
1.4.2 RAC环境的特殊问题. 12
1.4.3 RAC集群 ... 13
1.5 RAC架构详解 .. 15
1.6 RAC与 Clusterware 17
1.7 安装 RAC.... 18
1.7.1 设计 RAC应用环境.... 18
1.7.2 确认安装的软件组件 .. 19
1.7.3 任务规划 .... 20
1.7.4 安装虚拟机 21
1.7.5 在虚拟机上安装 linux操作系统.. 24
1.7.6 配置主机 .... 30
1.7.7 安装 Clusterware.... 43
1.7.8 安装数据库软件 .... 54
1.7.9 启动监听 .... 56
1.7.10 创建 ASM. 58
1.7.11 创建数据库 .... 62
1.8 Failover和 Load balance测试 . 66
1.8.1 Failover失败转移.. 67
1.8.2 LoadBalance负载均衡 68
1.9 本章小结 ..... 69
第 2章 ASM自动存储管理 70
2.1 Oracle自动存储管理概述 . 70
2.2 自动存储管理的优点 ... 71
2.3 ASM系统架构.. 72
2.4 ASM和 CSS集群同步服务 .... 73
2.5 创建 ASM实例 74
2.6 启动 ASM实例 80
2.7 理解 ASM实例架构 .... 83
2.8 ASM命令行管理工具 . 83
2.9 管理 ASM磁盘组 .. 86
2.9.1 使用 ASM磁盘组管理文件的优势 ... 86
2.9.2 创建磁盘组 88
2.9.3 向磁盘组添加磁盘 91
2.9.4 删除磁盘和磁盘组 92
2.9.5 平衡磁盘组 94
2.9.6 MOUNT和 DISMOUNT磁盘组 . 95
2.10 管理 ASM文件 .... 96
2.10.1 ASM磁盘组文件名结构 96
2.10.2 ASM磁盘组中目录管理 97
2.10.3 添加和删除别名 .. 98
2.10.4 删除文件 .. 99
2.10.5 使用 ASM文件模板 . 99
2.11 使用 RMAN将数据库迁移到 ASM实例 .. 101
2.12 管理 ASM的数据字典视图 108
2.13 本章小结 . 108
第 3章管理 Clusterware组件及管理指令..... 109
3.1 Clusterware及其组件. 109
3.2 备份和恢复 VotingDisks.. 110
3.3 添加和删除 VotingDisks.. 111
3.4 备份和恢复 OCR.. 113
3.4.1 从自动备份中恢复 OCR. 115
3.4.2 从人工备份文件中恢复 .. 115
3.5 修改 OCR存储配置信息. 116
3.6 删除 OCR存储 ..... 118
3.7 ocrconfig指令功能汇总... 119
3.8 管理 Clusterware指令 120
3.8.1 srvctl指令 120
3.8.2 crs_stat指令 ... 126
3.8.3 onsctl指令 130
3.8.4 crsctl指令. 134
3.8.5 ocrcheck指令. 137
3.8.6 ocrdump指令. 138
3.8.7 oifcfg指令 140
3.8.8 olsnodes指令 . 142
3.9 本章小结 ... 143
第 4章 DataGuard的安装与管理 144
4.1 DataGuard是什么. 144
4.2 DataGuard体系结构... 144
4.2.1 DataGuard的架构 144
4.2.2 DataGuard的后台进程.... 145
4.3 DataGuard配置及相关概念... 146
4.4 DataGuard服务本质... 147
4.4.1 Apply服务 ..... 148
4.4.2 Redo 应用 148
4.4.3 SQL 应用. 149
4.4.4 角色转换服务 149
4.5 DataGuard的保护模式..... 150
4.6 DataGuard的优点. 151
4.7 手工搭建物理 DataGuard. 152
4.8 物理 DataGuard的 SWITCHOVER .. 161
4.9 物理 DataGuard的 FAILOVER... 164
4.10 如何转换 FAILOVER后的主库为新备库 . 166
4.11 管理物理 Standby数据库 .... 168
4.11.1 启动 Standby数据库 ..... 168
4.11.2 关闭 Standby数据库 ..... 169
4.11.3 Primary数据库结构变化的传播 .... 170
4.11.4 自动传播数据文件和表空间的变化 .... 170
4.11.5 手工修改数据文件和表空间的变化 .... 171
4.11.6 重命名数据文件 174
4.11.7 添加或删除重做日志组 176
4.11.8 监控 DataGuard数据库视图..... 176
4.11.9 设置 DataGuard保护模式... 179
4.12 DataGuard broker 181
4.12.1 DataGuard Broker概述 . 181
4.12.2 DataGuard Broker的配置 ... 181
4.12.3 DataGuard Broker的组件 ... 182
4.12.4 DataGuard Broker的 DMON进程 . 183
4.12.5 DataGuard Broker使用的前提条件 ..... 184
4.12.6 DataGuard Broker配置实例演示 ... 184
4.12.7 DataGuard Broker完成物理 DG的 SWITCHOVER .. 187
4.12.8 DataGuard Broker实现 DG的自动 FAILOVER... 189
4.12.9 DG的 DGMGRL维护指令设置 .... 191
4.13 DataGuard 的日志传输服务 192
4.13.1 通过 ARCn进程来传送 Redo .. 193
4.13.2 LGWR进程同步传送 Redo 195
4.13.3 LGWR进程异步传送 Redo 196
4.14 本章小结 . 197
第 5章 Streams技术原理与应用. 198
5.1 Streams概述 198
5.2 Streams的原理 ..... 199
5.3 Streams体系结构概述 ..... 199
5.4 配置本地捕获进程的单向复制 ... 201
5.4.1 具体配置之前的任务 202
5.4.2 Stream单向本地复制配置.... 204
5.5 使用 MAINTAIN_*存储过程配置流 210
5.6 Streams的几个重要视图 . 213
5.7 小结 ..... 215
第 6章 RMAN备份与恢复数据库 216
6.1 RMAN概述 .... 216
6.2 RMAN的独特之处 .... 216
6.3 RMAN系统架构详解 217
6.4 快闪恢复区(flash recovery area)... 218
6.4.1 修改快闪恢复区大小 218
6.4.2 解决快闪恢复区的空间不足问题 .... 220
6.5 建立 RMAN到数据库的连接 ..... 221
6.6 RMAN的相关概念与配置参数 .. 222
6.7 RMAN备份控制文件 224
6.8 RMAN实现脱机备份 226
6.9 RMAN联机备份 .. 228
6.9.1 联机备份前的准备工作 .. 228
6.9.2 联机备份整个数据库 229
6.9.3 联机备份一个表空间 233
6.9.4 联机备份一个数据文件 .. 234
6.9.5 RMAN备份坏块处理方式 ... 235
6.10 RMAN的增量备份 .. 235
6.11 快速增量备份 ..... 237
6.12 在映像副本上应用增量备份 ..... 239
6.13 创建和维护恢复目录 ..... 240
6.14 RMAN的脚本管理 .. 243
6.15 使用 RMAN非归档模式下的完全恢复 ..... 245
6.15.1 控制文件、数据文件以及重做日志文件丢失的恢复 245
6.15.2 只有数据文件丢失的恢复 .. 249
6.15.3 联机重做日志文件和数据文件损坏的恢复 .... 251
6.15.4 如何将数据文件恢复到其它磁盘目录下 .. 254
6.16 使用 RMAN归档模式下的完全恢复 ... 254
6.16.1 非系统表空间损坏的恢复 .. 254
6.16.2 系统表空间损坏的恢复 257
6.16.3 所有数据文件丢失的恢复 .. 258
6.17 RMAN实现数据块恢复 258
6.18 RMAN的备份维护指令 262
6.18.1 RMAN的 VALIDATE BACKUPSET指令 .... 262
6.18.2 RMAN的 RESTORE…VALIDATE指令 . 263
6.18.3 RMAN的 RESTORE…PREVIEW指令.... 264
6.18.4 RMAN的 LIST指令..... 265
6.18.5 RMAN的 REPORT指令.... 268
6.19 本章小结 . 269
第 7章手工管理的备份恢复.. 270
7.1 备份恢复的概念 ... 270
7.1.1 物理备份 .. 270
7.1.2 逻辑备份 .. 271
7.1.3 冷备份与热备份 .. 271
7.1.4 数据库恢复 .... 271
7.2 非归档模式下的冷备与恢复 . 272
7.2.1 冷备的步骤 .... 273
7.2.2 冷备下的恢复 274
7.2.3 缺少重做日志文件的恢复方法 .. 276
7.3 归档模式与非归档模式 ... 278
7.3.1 设置数据库的归档模式 .. 278
7.3.2 设置归档进程相关参数 .. 280
7.3.3 管理归档文件和归档目录 .... 281
7.4 手工热备数据库的步骤 ... 284
7.5 热备过程中对数据库崩溃的处理方法 ... 287
7.6 热备的原理 ..... 289
7.7 备份控制文件 . 290
7.8 介质恢复的原理 ... 293
7.9 归档模式下的完全恢复 ... 298
7.9.1 数据文件在有备份情况下的恢复 .... 298
7.9.2 数据文件在无备份情况下的恢复 .... 301
7.9.3 系统表空间数据文件损坏的完全恢复 .. 303
7.9.4 当前 UNDO表空间损坏的完全恢复..... 304
7.9.5 非当前 UNDO表空间损坏的完全恢复. 306
7.10 何时使用不完全恢复 ..... 309
7.10.1 不完全恢复的场合 .. 309
7.10.2 不完全恢复的类型 .. 309
7.11 所有控制文件丢失的恢复方法 . 310
7.11.1 使用备份的控制文件 .... 310
7.11.2 重建控制文件 .... 313
7.12 本章小结 . 317
第 8章 Oracle闪回技术... 318
8.1 理解闪回级别 . 318
8.2 闪回数据库 ..... 319
8.2.1 闪回数据库概述 .. 319
8.2.2 启用闪回数据库 .. 320
8.2.3 关闭闪回数据库 .. 322
8.2.4 闪回数据库方法 .. 323
8.2.5 使用闪回数据库 .. 324
8.2.6 监控闪回数据库 .. 326
8.2.7 使用闪回数据库的限制 .. 328
8.3 闪回删除 ... 328
8.3.1 闪回删除原理 328
8.3.2 回收站的使用 329
8.3.3 恢复删除的表 332
8.3.4 恢复多个同名的表 .... 335
8.3.5 应用 Purge永久删除表... 337
8.4 闪回表 . 339
8.5 闪回版本查询 . 341
8.6 闪回事务查询 . 342
8.7 闪回查询 ... 343
8.8 复原点技术 ..... 344
8.9 本章小结 ... 345
第 9章数据迁移-EXP/IMP .... 347
9.1 关于备份的几个概念 . 347
9.2 使用 EXP指令实现逻辑备份 348
9.2.1 EXP指令详解 348
9.2.2 不带参数的 EXP 备份.... 350
9.2.3 EXP指令导出整个数据库.... 353
9.2.4 EXP指令导出特定的表.. 354
9.2.5 EXP指令导出指定的用户.... 355
9.2.6 EXP指令导出特定的表空间 356
9.3 使用 IMP指令实现逻辑恢复 357
9.3.1 IMP指令详解 358
9.3.2 IMP指令恢复整个数据库 .... 359
9.3.3 IMP指令恢复特定的表 .. 360
9.3.4 IMP指令恢复指定的用户 .... 361
9.4 使用 EXP/IMP实现传输表空间 . 363
9.4.1 理解 Big/Little Endian ..... 363
9.4.2 传输表空间的限制 .... 364
9.4.3 传输表空间的兼容性问题 .... 365
9.4.4 传输表空间的自包含特性 .... 365
9.4.5 实现传输表空间的步骤 .. 365
9.4.6 使用 EXP/IMP实现同平台表空间迁移 367
9.4.7 使用 EXP/IMP实现跨平台表空间迁移 370
9.5 本章小结 ... 374
第 10章数据迁移-EXPDP/IMPDP .... 375
10.1 数据泵导出(EXPDP)简介 .... 375
10.1.1 数据泵导入导出技术的结构 .... 375
10.1.2 数据泵导入导出技术的优点 .... 376
10.1.3 数据泵导入导出的目录对象 .... 376
10.2 数据泵导入导出与 EXP/IMP技术的区别 . 378
10.3 数据泵导出(EXPDP)数据库实例 .... 379
10.3.1 数据泵导出的参数含义 379
10.3.2 数据泵导出数据库实例 384
10.4 数据泵导入数据库实例 . 389
10.4.1 数据泵导入概述及参数含义 .... 389
10.4.2 数据泵导入数据库实例步骤 .... 396
10.5 使用数据泵迁移表空间 . 399
10.6 使用数据泵生成外部表 . 401
10.7 本章小结 . 403
第 11章基于 CBO的 SQL优化.. 404
11.1 性能调整方法 ..... 404
11.2 SQL查询处理过程详解. 405
11.2.1 语法分析 405
11.2.2 语句优化 405
11.2.3 查询执行 405
11.3 基于成本的优化 . 406
11.3.1 选择 CBO的优化方式.. 406
11.3.2 优化器工作过程 407
11.4 自动统计数据 ..... 408
11.5 手工统计数据库数据 ..... 409
11.6 统计操作系统数据 ... 413
11.7 手工统计字典数据 ... 415
11.8 主动优化 SQL语句.. 416
11.8.1 WHERE谓词的注意事项... 416
11.8.2 SQL语句优化工具.. 417
11.8.3 使用索引 425
11.8.4 索引类型及使用时机 .... 432
11.8.5 使用绑定变量 .... 438
11.8.6 消除子查询优化 SQL语句. 439
11.9 被动优化 SQL语句.. 441
11.9.1 使用分区表 .. 441
11.9.2 使用表和索引压缩 .. 442
11.9.3 保持 CBO的稳定性 442
11.9.4 创建合适的索引 446
11.10 详解 V$SQL视图... 446
11.11 本章小结 ..... 448
第 12章 Oracle数据库实例优化.. 449
12.1 详解 SGA与实例优化 ... 449
12.2 将程序常驻内存 . 454
12.2.1 创建软件包 DBMS_SHARED_POOL . 454
12.2.2 将程序常驻内存的过程 456
12.2.3 从 DBMSPOOL脚本理解软件包 DBMS_SHARED_POOL . 458
12.3 将数据常驻内存 . 460
12.3.1 再论数据块缓存池 .. 460
12.3.2 将数据常驻内存的过程 461
12.3.3 将常驻内存的程序恢复为默认缓冲池 464
12.4 优化重做日志缓冲区 ..... 465
12.4.1 深入理解重做日志缓冲区的工作机制 465
12.4.2 重做日志缓冲区相关的等待事件 .. 467
12.4.3 设置重做日志缓冲区大小 .. 469
12.5 优化共享池(Shared Pool) ..... 471
12.5.1 库高速缓存 .. 471
12.5.2 使用绑定变量 .... 471
12.5.3 调整参数 CURSOR_SHARING ..... 474
12.5.4 设置共享池的大小 .. 475
12.6 优化数据库高速缓存 ..... 476
12.6.1 调整数据库缓冲区大小 477
12.6.2 使用缓冲池 .. 478
12.7 优化 PGA内存 ... 480
12.8 本章小结 . 484
第 13章 Statspack与 AWR ... 485
13.1 Statspack安装..... 485
13.2 设置 Statspack相关参数 487
13.3 statspack数据收集.... 490
13.3.1 STATSPACK收集统计数据的原理 .... 490
13.3.2 创建性能数据报表 .. 492
13.3.3 自动收集性能报告 .. 494
13.4 初步分析 STATSPACK性能报告 .. 496
13.5 AWR是什么. 501
13.6 管理 AWR.....502
13.6.1 DBMS_WORKLOAD_REPOSITORY包的使用.. 503
13.6.2 AWR快照与 STATISTICS_LEVEL参数的关系. 504
13.6.3 手工创建 AWR快照..... 504
13.6.4 清除 AWR快照. 505
13.6.5 修改 AWR快照参数..... 506
13.6.6 创建和删除 AWR快照基线..... 506
13.6.7 创建 AWR报告. 508
13.7 ASH是 AWR的补充..... 511
13.8 创建并分析 ASH报告 ... 511
13.9 AWR与 ADDM的关系. 514
13.10 本章小结 ..... 519
资源截图: