《Oracle9i 数据库性能调整与优化》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:Hassan A.Afyouni著;吴越胜,张耀辉等译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2005
  • ISBN:7302108749
  • 页数:711 页
图书介绍:本书内容调整缓存和日志缓冲区,处理程序全局域,优化数据存储、优化表空间、调整UNDO段、检测锁争用、高级调整问题、Oracle调整工具、SQL性能调整。

目录 2

第1部分 调整基础 2

第1章 性能调整概述 2

1.1 数据库调整概述 2

1.2 系统开发生命周期 3

1.3 调整目标 6

1.4 性能问题 8

1.5 调整过程和步骤 10

1.6 使用数据库调整检查表 14

1.7 DBA的作用和职责 15

1.8 Oracle调整工具 18

1.9 复习题 19

1.10 考试复习题:Oracle9i性能调整(#1Z0-033) 20

1.11 实习项目 22

1.12 案例项目 23

第2部分 调整内存 26

第2章 调整缓冲区缓存 26

2.1 缓冲区缓存概述 27

2.2 配置缓冲区缓存 29

2.3 具有一个数据库块大小的数据库 31

2.4 具有多个块大小的数据库 32

2.5 动态SGA分配 35

2.6 配置多个缓冲区池 37

2.8 Buffer Cache Size Advice 40

2.7 自动表缓存 40

2.9 缓冲区缓存诊断 45

2.10 缓冲区缓存的内部情况 51

2.11 复习题 54

2.12 考试复习题:Oracle9i性能调整(#1Z0-033) 54

2.13 实习项目 57

2.14 案例项目 59

第3章 调整重做日志缓冲区 68

3.1 重做日志缓冲区概述 68

3.1.1 作用和功能 69

3.1.2 事务 69

3.1.4 进程 70

3.1.3 清空重做日志缓冲区 70

3.2 修改重做日志缓冲区容量 71

3.2.1 设置初始化参数 71

3.2.2 容量影响性能 72

3.2.3 修改容量的规则 72

3.3 日志缓冲区和日志写入器(LGWR) 76

3.4 日志缓冲区诊断 78

3.5 优化重做操作 86

3.6 复习题 88

3.7 考试复习题:Oracle 9i性能调整(#1Z0-003) 89

3.8 实习项目 91

3.9 案例项目 94

第4章 调整Shared Pool Memory 96

4.1 Shared Pool Memory概述 97

4.1.1 处理SQL语句 98

4.1.2 处理PL/SQL块 98

4.1.3 分析进程 101

4.2 Shared Pool Memory性能的相关术语 101

4.3 Shared Pool Memory内部结构相关术语 102

4.4 库缓存 103

4.5 数据字典缓存 104

4.6 配置Shared Pool Memory 106

4.7 Shared Pool Size Advice 109

4.8 诊断Shared Pool Memory 112

4.8.1 诊断库缓存 112

4.8.2 诊断数据字典缓存 115

4.8.3 诊断Shared Pool Memory利用 117

4.8.4 诊断Shared Pool空闲内存 118

4.8.5 使用Oracle Enterprise Manager诊断Shared Pool 119

4.9 查看Shared Pool Memory 122

4.9.1 V$DB_OBJECT_CACHE 123

4.9.2 V$OBJECT_USAGE 124

4.9.3 V$SQL 124

4.9.4 V$SQLAREA 124

4.9.5 V$SQLTEXT 126

4.9.6 V$SQLTEXT_WITH_NEWLINES 127

4.10 清空Shared Pool Memory 128

4.11 固定对象 128

4.11.1 CURSOR_SHARING参数 133

4.11.2 CURSOR_SPACE_FOR_TIME参数 135

4.12 大型池内存 135

4.13 Java池 136

4.14 复习题 138

4.15 考试复习题:Oracle9i性能调整(#1Z0-033) 140

4.16 实习项目 142

4.17 案例项目 146

第5章 使用Program Global Area 148

5.1 Program Global Area 149

5.1.1 PGA的组件 150

5.1.2 PGA对性能的影响 151

5.2 PGA配置 152

5.2.1 专用服务器的PGA配置 153

5.2.2 AUTO设置 154

5.2.3 手工设置 155

5.2.4 共享服务器的PGA配置 157

5.3 PGA Advice功能 158

5.3.1 使用动态性能视图的Advice 158

5.3.2 使用Oracle Enterprise Manager的Advice 161

5.3.3 调整PGA目标 163

5.4 PGA诊断 164

5.4.1 使用V$SQL_WORKAREA视图 166

5.4.2 PGA统计 170

5.4.3 使用V$SYSSTAT视图的更多PGA统计 172

5.4.4 PGA和Oracle Enterprise Manager 173

5.5 调整排序操作 174

5.5.1 排序操作 175

5.5.2 防止排序操作 176

5.5.3 排序操作诊断 177

5.5.4 系统级诊断 180

5.5.5 会话级诊断 181

5.5.6 SORT_AREA_RETAINED_SIZE参数 182

5.6 创建临时表空间 182

5.7 复习题 186

5.8 考试复习题:Oracle9i性能调整(#1Z0-033) 187

5.9 实习项目 190

5.10 案例项目 193

第6章 优化数据存储 196

第3部分 调整存储器 196

6.1 物理体系结构 197

6.2 Oracle块概况 198

6.2.1 Oracle块大小 199

6.2.2 Oracle块选项 201

6.2.3 PCTFREE概况 202

6.2.4 PCTFREE计算 205

6.2.5 PCTFREE和PCTUSED计算指导原则 208

6.2.6 高水位线 209

6.3 盘区管理 210

6.3.1 盘区选项 211

6.3.2 数据字典盘区管理 214

6.3.3 局部盘区管理 217

6.3.4 盘区报告 220

6.4 段的大小设置 221

6.4.1 段类型 221

6.4.2 表段的大小设置 223

6.4.3 分析表和表统计 226

6.4.4 DBMS_SPACE程序包 232

6.4.5 检测和解决链接的行 236

6.5 索引段 245

6.6 10个最好的方法 246

6.7 复习题 246

6.8 考试复习题:Oracle9i性能调整(#1Z0-033) 247

6.9 实习项目 250

6.10 案例项目 251

第7章 优化表空间 253

7.1 RAID配置 254

7.1.1 RAID第0层的特征 255

7.1.2 RAID第1层的特征 255

7.1.3 RAID第0+1层的特征 256

7.1.4 RAID第5层的特征 256

7.2 表空间 257

7.2.1 表空间概况 257

7.2.2 表空间的类型 259

7.2.3 表空间的管理 259

7.2.4 自动空间管理 262

7.2.5 表空间创建选项 264

7.2.6 表空间示例 267

7.2.7 更改表空间状态 269

7.2.8 表空间的大小设置 271

7.2.9 表空间分配 273

7.2.10 表空间映射 276

7.2.11 Oracle Enterprise Manager Tablespace Map工具 276

7.2.12 调整表空间的大小 281

7.2.13 移动和重命名数据文件 282

7.2.14 可传送的表空间 284

7.2.15 表空间监控 288

7.3 Oracle-managed Files 291

7.4 监控数据文件的I/O活动 296

7.5 检测和诊断数据文件争用 297

7.6 外部文件 301

7.7 DBMS_SPACE_ADMIN程序包 304

7.8 容量计划 305

7.8.1 非生产数据库的容量计划 306

7.8.2 新生产数据库的容量计划 306

7.8.3 生产数据库增长的容量计划 306

7.9 最佳方法 309

7.10 复习题 309

7.11 考试复习题:Oracle9i性能调整(#1Z0-033) 310

7.12 实习项目 312

7.13 案例项目 314

第8章 调整UNDO段 316

8.1 回滚概念 318

8.2 UNDO段概述 320

8.2.1 回滚段和UNDO段 321

8.2.2 UNDO段的用途 323

8.3 UNDO段的管理 325

8.3.1 人工管理 325

8.3.2 自动管理 330

8.4 设置大小的指导原则 335

8.4.1 设置回滚段的大小 335

8.4.2 设置撤销段的大小 341

8.5 诊断回滚段 344

8.5.1 回滚段统计信息 344

8.5.2 回滚段块标题争用 346

8.5.3 段标题争用 347

8.5.4 回滚段缓冲器争用 347

8.5.5 回滚段用法 348

8.5.6 使用回滚段的事务 349

8.5.7 回滚段和进程信息 350

8.5.8 回滚段持续时间 350

8.5.9 提交与回滚 351

8.6 诊断UNDO段 351

8.6.1 空间请求指示器 352

8.6.2 快照指示器 352

8.6.3 偷窃指示器 353

8.6.4 事务高峰时间 353

8.7 用Oracle Enterprise Manager诊断UNDO段 354

8.6.5 最长的事务 354

8.8 反闪查询 356

8.9 解决常见的UNDO段问题 359

8.9.1 ORA-01554出错:不在事务表中的事务槽范围之中 359

8.9.2 ORA-01555出错:快照太陈旧 359

8.9.3 ORA-01594出错:试图包装到回滚段中 360

8.9.4 ORA-01650出错:不能扩充回滚段 360

8.10 减少撤销数据的最好方法 360

8.11 复习题 361

8.12 考试复习题:Oracle9i性能调整(#1Z0-033) 362

8.13 实习项目 365

8.14 案例项目 369

第4部分 高级调整 372

第9章 检测锁争用 372

9.1 锁概述 373

9.2 锁类型 374

9.2.1 DDL锁 375

9.2.2 DML锁 375

9.3 锁模式 376

9.4 锁级别 378

9.4.1 数据库级别 378

9.4.2 表级别 379

9.4.4 列级别 380

9.5 锁语句 380

9.4.3 行级别 380

9.5.1 SHARE(S)锁模式 383

9.5.2 ROW SHARE(RS)锁模式 384

9.5.3 ROW EXCLUSIVE(RX)锁模式 385

9.5.4 SHARE ROW EXCLUSIVE(SRX)锁模式 386

9.5.5 EXCLUSIVE(X)锁模式 387

9.6 SELECT...FOR UPDATE语句 387

9.7 锁定示例 389

9.8 DML_LOCKS初始化参数 391

9.9 SET TRANSACTION语句 392

9.10 死锁 394

9.11.1 锁的动态性能视图 397

9.11 检测和解决锁争用 397

9.11.2 Oracle Enterprise Manager 404

9.11.3 解决锁争用 407

9.12 10个最好方法 407

9.13 复习题 407

9.14 考试复习题:Oracle9i性能调整(#1Z0-033) 408

9.15 实习项目 410

9.16 案例项目 411

第10章 其他调整问题 413

10.1 调整后台进程 414

10.1.1 ARCn进程 416

10.1.2 CKPT进程 419

10.1.3 DBWn进程 423

10.2 检测后台进程争用 426

10.3 锁存器 428

10.4 调整和监控操作系统 430

10.4.1 操作系统调整问题 431

10.4.2 内存 432

10.4.3 输入/输出(I/O) 432

10.4.4 CPU 433

10.4.5 操作系统监控工具 434

10.6 复习题 440

10.7 考试复习题:Oracle9i性能调整(#1Z0—033) 441

10.8 实习项目 443

10.9 案例项目 444

第11章 高级调整主题 446

11.1 共享服务器的配置和监控 447

11.1.1 专用服务器模式 447

11.1.2 共享服务器模式 449

11.1.3 配置共享服务器 451

11.1.4 监控和检测共享服务器连接 457

11.1.5 共享服务器的优点和缺点 464

11.2 分布式事务处理 465

11.2.1 分布式事务处理概述 465

11.2.2 创建和使用DATABASE LINK 466

1 1.2.3 DATABASE LINK的性能问题 473

11.3 复制 473

11.3.1 复制体系结构的概述 475

11.3.2 复制类型 479

11.3.3 物化视图复制的建立 481

11.3.4 诊断复制问题 492

11.4 Real Application Cluster 493

11.5 复习题 494

11.6 考试复习题:Oracle9i性能调整(#1Z0-033) 495

11.7 实习项目 497

11.8 案例项目 498

第5部分 调整内存 502

第12章 调整工具 502

12.1 诊断工具 503

12.1.1 Alert日志 503

12.1.3 V$视图 505

12.1.2 背景进程跟踪 505

12.1.4 初始化参数 508

12.1.5 Oracle Enterprise Manager 510

12.2 统计工具 513

12.2.1 UTLBSTAT/UTLESTAT 513

12.2.2 STATSPACK 518

12.3 SQL工具 540

12.4 数据块分解工具 559

12.4.1 DBVERIFY 559

12.4.2 DBMS_REPAIR 561

12.4.3 分析工具 563

12.4.4 分析命令 564

12.4.5 DBMS_UTILITY 564

12.4.7 DBMS_DDL 565

12.4.6 DBMS_STATS 565

12.5 资源管理工具 566

12.5.1 Database Resource Manager的组成部分 566

12.5.2 DEFAULT PLAN和CONSUMER GROUP 568

12.5.3 使用DRM 569

12.5.4 观察Resource Manager Data 576

12.6 复习题 578

12.7 考试复习题:Oracle9i性能调整(#1Z0-033) 579

第6部分 应用调整 586

第13章 SQL调整 586

13.1 Oracle优化器 587

13.1.1 优化器模式 589

13.1.2 基于规则的优化器 590

13.1.3 基于成本的优化器 597

13.2 解释SQL的执行计划和统计数字 601

13.2.1 查询实例1 601

13.2.2 查询实例2 603

13.2.3 查询实例3 608

13.3 与优化器有关的参数 611

13.4 优化器提示 612

13.4.1 连接顺序提示 612

13.4.2 查询转换提示 615

13.4.3 访问路径 616

13.4.4 并行执行 617

13.4.5 连接操作提示 618

13.4.6 优化器目标提示 620

13.4.7 其他提示 621

13.5 识别消耗最高资源量的SQL查询 622

13.6 理解SQL标准的要求 624

13.6.2 限定表 625

13.6.1 语法约定 625

13.6.3 表别名 625

13.7 改进SQL语句的执行 626

13.6.4 绑定变量 626

13.7.1 分析表和索引 627

13.7.3 考虑在外关键字上创建索引 628

13.7.2 创建索引 628

13.7.4 在小表上使用索引 629

13.7.5 使用OR与UNION的相互替代 630

13.7.6 并行执行 631

13.7.7 表别名 632

13.7.9 使用NOT EQUAL(!=)或NOT IN操作符与NOT EXISTS操作符的相互替代 633

13.7.8 使用表连接代替简单的子查询 633

13.7.10 使用Oracle提示 634

13.7.11 使用UNION ALL代替UNION 635

13.7.12 当计算行数时使用索引列 636

13.7.13 重写查询 636

13.7.14 使用基于函数的索引 637

13.7.15 使用绑定变量 638

13.8 避免低速的SQL执行 640

13.9 SQL分析实例 641

13.9.1 方法 641

13.9.2 查询1 642

13.9.3 查询2 643

13.9.4 查询3 645

13.10 使用摘要 645

13.10.1 场景1 646

13.10.2 场景2 648

13.10.3 场景3 649

13.10.4 场景4 650

13.11 复习题 652

13.12 考试复习题:Oracle9i性能调整(#1Z0-033) 653

13.13 实习项目 655

13.14 案例项目 659

第14章 优化应用 661

14.1 索引对调整的影响 662

14.1.2 复合索引 664

14.1.1 B*Tree索引 664

14.1.3 逆索引 665

14.1.4 Skip Scan索引功能 666

14.1.5 压缩索引 668

14.1.6 基于函数的索引 670

14.1.7 位图索引 671

14.2 监控索引使用情况 673

14.3 虚拟索引 675

14.4 表的应用考虑 678

14.4.1 索引组织表 679

14.4.2 群集表 681

12.8 实习项目 683

14.4.3 表分区 684

12.9 案例项目 684

14.5 复习题 691

14.6 考试复习题:Oracle9i性能调整(#1Z0-033) 692

14.7 实习项目 694

14.8 案例项目 695

第15章 调整专题和Statistics Collector项目 697

15.1 调整专题 697

15.1.1 公司 697

15.1.2 应用 697

15.1.3 模式 698

15.1.4 阶段 698

15.2.1 目的 701

15.2.2 描述 701

15.1.5 最后思考 701

15.2 Statistics Collector项目 701

15.2.3 体系结构 702

15.2.4 数据模型 702

15.2.5 数据仓库的物理结构 703

15.2.6 Statistics Collector的存储程序包 706

15.2.7 报告 706

15.2.8 数据库连接 706

15.2.9 工作调度 706

附录 Oracle体系结构概述 708