当前位置:首页 > 工业技术
图灵程序设计丛书  ORACLE性能诊断艺术  第2版
图灵程序设计丛书  ORACLE性能诊断艺术  第2版

图灵程序设计丛书 ORACLE性能诊断艺术 第2版PDF电子书下载

工业技术

  • 电子书积分:18 积分如何计算积分?
  • 作 者:(瑞士)CHRISRIAN ANTOGNINI著;王作佳,刘迪译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2016
  • ISBN:7115421173
  • 页数:610 页
图书介绍:
《图灵程序设计丛书 ORACLE性能诊断艺术 第2版》目录

第一部分 基础 2

第1章 性能问题 2

1.1 需要为性能做规划吗 2

1.1.1 需求分析 2

1.1.2 分析与设计 4

1.1.3 编码和单元测试 4

1.1.4 集成和验收测试 6

1.2 为性能而设计 6

1.2.1 缺乏数据库逻辑设计 6

1.2.2 实现通用表 7

1.2.3 未使用约束加强数据完整性 7

1.2.4 缺乏数据库物理设计 7

1.2.5 未正确选择数据类型 8

1.2.6 未正确使用绑定变量 8

1.2.7 未利用数据库高级特性 8

1.2.8 未使用PL/SQL进行以数据为中心的处理 9

1.2.9 执行不必要的提交 9

1.2.10 持续打开和关闭数据库连接 9

1.3 你真的面临性能问题吗 9

1.3.1 系统监控 10

1.3.2 响应时间监控 10

1.3.3 强迫性调优障碍 10

1.4 如何处理性能问题 11

1.4.1 业务视角和系统视角 11

1.4.2 问题的编录 12

1.4.3 解决问题 12

1.5 小结 15

第2章 关键概念 16

2.1 选择率和基数 16

2.2 什么是游标 17

2.3 游标的生命周期 18

2.4 解析的工作原理 20

2.4.1 可共享游标 22

2.4.2 绑定变量 25

2.5 读写数据块 35

2.6 检测 36

2.6.1 应用程序代码 37

2.6.2 数据库调用 39

2.7 小结 42

第二部分 识别 45

第3章 分析可重现的问题 45

3.1 跟踪数据库调用 45

3.1.1 SQL跟踪 45

3.1.2 跟踪文件的结构 57

3.1.3 使用TRCSESS 59

3.1.4 探查器 60

3.1.5 使用TKPROF 60

3.1.6 使用TVD$XTAT 70

3.2 探查PL/SQL代码 79

3.2.1 使用DMBS HPROF 79

3.2.2 使用DBMS PROFILER 85

3.2.3 触发探查器 89

3.3 小结 90

第4章 实时分析不可重现的问题 91

4.1 分析路线图 91

4.2 动态性能视图 93

4.2.1 操作系统统计信息 93

4.2.2 时间模型统计信息 94

4.2.3 等待级别和等待事件 96

4.2.4 系统和会话统计信息 100

4.2.5 度量值 101

4.2.6 当前会话状态 102

4.2.7 活动会话历史 103

4.2.8 SQL语句统计信息 111

4.2.9 实时监控 112

4.3 使用Diagnostics Pack和Tuning Pack 进行分析 115

4.3.1 数据库服务器负载 115

4.3.2 系统级别分析 116

4.3.3 会话级别分析 120

4.3.4 SQL语句信息 122

4.4 不使用Diagnostics Pack进行分析 125

4.4.1 数据库服务器负载 125

4.4.2 系统级别分析 126

4.4.3 会话级别分析 129

4.4.4 SQL语句信息 130

4.5 小结 131

第5章 不可重现问题的事后分析 132

5.1 知识库 132

5.2 自动工作负载存储库 133

5.2.1 执行配置 133

5.2.2 捕获快照 134

5.2.3 管理基线 135

5.3 Statspack 136

5.3.1 执行安装 137

5.3.2 配置存储库 137

5.3.3 捕获和清除快照 138

5.3.4 管理基线 139

5.4 使用Dignostics Pack进行分析 140

5.5 不使用Diagnostics Pack进行分析 140

5.6 小结 145

第三部分 查询优化器 148

第6章 查询优化器简介 148

6.1 基础知识 148

6.2 体系结构 150

6.3 查询转换 152

6.3.1 计数转换 152

6.3.2 公共子表达式消除 153

6.3.3 “或”扩张 153

6.3.4 视图合并 154

6.3.5 选择列表裁剪 155

6.3.6 谓词下推 156

6.3.7 谓词迁移 158

6.3.8 非重复放置 158

6.3.9 非重复消除 159

6.3.10 Group-by放置 159

6.3.11 Order-By消除 160

6.3.12 子查询展开 160

6.3.13 子查询合并 161

6.3.14 使用窗口函数移除子查询 162

6.3.15 联接消除 162

6.3.16 联接因式分解 163

6.3.17 外联接转内联接 163

6.3.18 完全外联接 164

6.3.19 表扩张 164

6.3.20 集合操作联接转变 165

6.3.21 星型转换 166

6.3.22 物化视图查询重写 166

6.4 小结 166

第7章 系统统计信息 167

7.1 dbms stats包 167

7.2 有哪些系统统计信息可用 168

7.3 收集系统统计信息 170

7.3.1 无工作负载统计信息 170

7.3.2 工作负载统计信息 171

7.3.3 在无工作负载统计信息和工作负载统计信息之间进行选择 174

7.4 还原系统统计信息 174

7.5 使用备份表 175

7.6 管理操作的日志记录 176

7.7 对查询优化器的影响 177

7.8 小结 182

第8章 对象统计信息 183

8.1 dbms stats包 183

8.2 有哪些对象统计信息可用 185

8.2.1 表统计信息 186

8.2.2 列统计信息 187

8.2.3 直方图 189

8.2.4 扩展统计信息 200

8.2.5 索引统计信息 205

8.2.6 分区对象统计信息 206

8.3 收集对象统计信息 207

8.3.1 目标对象 208

8.3.2 收集选项 212

8.3.3 备份表 217

8.4 配置dbms stats包 218

8.4.1 传统方式 218

8.4.2 现代方式 219

8.5 处理全局临时表 221

8.6 处理挂起的对象统计信息 222

8.7 处理分区对象 223

8.7.1 挑战 223

8.7.2 增量统计信息 226

8.7.3 复制统计信息 228

8.8 调度对象统计信息的收集 229

8.8.1 10g方式 229

8.8.2 11g和12c方式 231

8.9 还原对象统计信息 232

8.10 锁定对象统计信息 234

8.11 比较对象统计信息 236

8.12 删除对象统计信息 238

8.13 导出、导入、获取和设置对象统计信息 239

8.14 管理操作的日志记录 239

8.15 保持对象统计信息为最新的策略 241

8.16 小结 242

第9章 配置查询优化器 243

9.1 配置还是不配置 243

9.2 配置路线图 244

9.3 设置正确的参数 245

9.3.1 查询优化器参数 246

9.3.2 PGA管理 260

9.4 小结 266

第10章 执行计划 267

10.1 获取执行计划 267

10.1.1 EXPLAIN PLAN 语句 267

10.1.2 动态性能视图 270

10.1.3 自动工作负载存储库和Statspack 272

10.1.4 跟踪工具 274

10.2 dbms xplan包 277

10.2.1 输出 277

10.2.2 display函数 281

10.2.3 display cursor函数 286

10.2.4 display awr函数 288

10.3 解释执行计划 289

10.3.1 父-子关系 290

10.3.2 操作的类型 292

10.3.3 独立操作 292

10.3.4 迭代操作 295

10.3.5 无关联组合操作 295

10.3.6 关联组合操作 297

10.3.7 分而治之 305

10.3.8 特殊情况 307

10.3.9 自适应执行计划 310

10.4 识别低效的执行计划 314

10.4.1 错误的估算 314

10.4.2 未识别限制条件 316

10.5 小结 317

第四部分 优化 320

第11章 SQL优化技巧 320

11.1 修改访问结构 321

11.1.1 工作原理 321

11.1.2 何时使用 322

11.1.3 陷阱和谬误 322

11.2 修改SQL语句 322

11.2.1 工作原理 322

11.2.2 何时使用 323

11.2.3 陷阱和谬误 324

11.3 hint 324

11.3.1 工作原理 324

11.3.2 何时使用 330

11.3.3 陷阱和谬误 330

11.4 修改执行环境 332

11.4.1 工作原理 332

11.4.2 何时使用 334

11.4.3 陷阱和谬误 334

11.5 存储概要 334

11.5.1 工作原理 335

11.5.2 何时使用 343

11.5.3 陷阱和谬误 343

11.6 SQL配置文件 344

11.6.1 工作原理 345

11.6.2 何时使用 357

11.6.3 陷阱和谬误 357

11.7 SQL计划管理 358

11.7.1 工作原理 359

11.7.2 何时使用 372

11.7.3 陷阱和谬误 372

11.8 小结 373

第12章 解析 374

12.1 识别解析问题 374

12.1.1 快速解析 375

12.1.2 长解析 380

12.2 解决解析问题 381

12.2.1 快速解析 381

12.2.2 长解析 387

12.3 避开解析问题 387

12.3.1 游标共享 388

12.3.2 服务器端语句缓存 390

12.4 使用应用编程接口 392

12.4.1 PL/SQL 392

12.4.2 OCI 395

12.4.3 JDBC 396

12.4.4 ODP.NET 398

12.4.5 PHP 399

12.5 小结 400

第13章 优化数据访问 401

13.1 识别次优访问路径 401

13.1.1 识别 401

13.1.2 误区 403

13.1.3 原因 405

13.1.4 解决方案 406

13.2 弱选择性的SQL语句 409

13.2.1 全表扫描 409

13.2.2 全分区扫描 411

13.2.3 范围分区 411

13.2.4 散列和列表分区 422

13.2.5 复合分区 422

13.2.6 设计要素 424

13.2.7 全索引扫描 426

13.3 强选择性的SQL语句 429

13.3.1 Rowid访问 429

13.3.2 索引访问 430

13.3.3 单表散列群集访问 468

13.4 小结 470

第14章 优化联接 471

14.1 定义 471

14.1.1 联接树 471

14.1.2 联接的类型 475

14.1.3 限制条件与联接条件 478

14.2 嵌套循环联接 479

14.2.1 概念 479

14.2.2 两表联接 480

14.2.3 四表联接 481

14.2.4 缓冲区缓存预取 482

14.3 合并联接 484

14.3.1 概念 484

14.3.2 两表联接 485

14.3.3 四表联接 488

14.3.4 工作区 489

14.4 散列联接 494

14.4.1 概念 494

14.4.2 两表联接 495

14.4.3 四表联接 496

14.4.4 工作区 498

14.4.5 索引联接 498

14.5 外联接 499

14.6 选择联接方法 499

14.6.1 First-Rows优化 500

14.6.2 A11-Rows优化 500

14.6.3 支持的联接方法 500

14.6.4 并行联接 500

14.7 分区智能联接 501

14.7.1 完全智能化分区连接 501

14.7.2 部分智能化分区联接 504

14.8 星型转换 505

14.9 小结 511

第15章 数据访问和联接优化之外 512

15.1 物化视图 512

15.1.1 工作原理 512

15.1.2 何时使用 530

15.1.3 陷阱和谬误 531

15.2 结果缓存 531

15.2.1 工作原理 532

15.2.2 何时使用 538

15.2.3 陷阱和谬误 538

15.3 并行处理 539

15.3.1 作原理 540

15.3.2 何时使用 567

15.3.3 陷阱和谬误 567

15.4 直接路径插入 571

15.4.1 工作原理 572

15.4.2 何时使用 574

15.4.3 陷阱和谬误 574

15.5 行预取 575

15.5.1 工作原理 575

15.5.2 何时使用 579

15.5.3 陷阱和谬误 580

15.6 数组接口 580

15.6.1 工作原理 580

15.6.2 何时使用 583

15.6.3 陷阱和谬误 583

15.7 小结 583

第16章 优化物理设计 584

16.1 最优列顺序 584

16.2 最优数据类型 586

16.2.1 数据类型选择中的陷阱 586

16.2.2 数据类型选择最佳实践 589

16.3 行迁移和行链接 591

16.3.1 迁移与链接 591

16.3.2 问题描述 593

16.3.3 问题识别 593

16.3.4 解决方案 594

16.4 块争用 594

16.4.1 问题描述 594

16.4.2 问题识别 595

16.4.3 解决方案 599

16.5 数据压缩 602

16.5.1 概念 602

16.5.2 要求 603

16.5.3 方法 603

参考文献 606

相关图书
作者其它书籍
返回顶部