图书介绍

Oracle数据库性能优化方法论和最佳实践【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

Oracle数据库性能优化方法论和最佳实践
  • 柳遵梁,潘海君,应以峰著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111526940
  • 出版时间:2016
  • 标注页数:553页
  • 文件大小:76MB
  • 文件页数:570页
  • 主题词:关系数据库系统-系统优化

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Oracle数据库性能优化方法论和最佳实践PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 Oracle性能优化漫谈1

1.1 从生活场景漫谈性能优化1

1.1.1 从一个真实病例说起1

1.1.2 如何改善宝马汽车的运行速度2

1.2 性能优化目标的确定和衡量3

1.2.1 性能优化的范畴或优化对象确定4

1.2.2 性能优化目标的用户期望管理4

1.2.3 性能优化的目标衡量5

1.3 吞吐量和响应时间6

1.3.1 吞吐量6

1.3.2 响应时间7

1.3.3 吞吐量和响应时间关系曲线8

1.3.4 医院挂号窗口的吞吐量和响应时间曲线8

1.3.5 tpcc测试的吞吐量和响应时间曲线10

1.3.6 磁盘I/O系统吞吐量和响应时间曲线10

1.4 Oracle性能优化工作的分类12

1.4.1 上线优化或从未达到过性能期望的系统优化12

1.4.2 响应速度逐步变慢的系统优化13

1.4.3 运行过程中突然变慢的系统优化13

1.4.4 突然变慢,持续一段时间后又恢复正常的业务系统优化14

1.4.5 基于降低资源消耗的系统优化14

1.4.6 预防性日常性能优化14

1.5 测量和变化15

1.5.1 测量和性能15

1.5.2 变化检测和性能优化17

1.5.3 量变和质变18

1.6 基线管理19

1.6.1 基准点和基线19

1.6.2 沟通基线19

1.6.3 基线管理和动态基线20

1.7 Oracle性能优化的神话和误区23

1.7.1 艺术和科学23

1.7.2 Oracle业务系统性能优化是高手的专利23

1.7.3 测试系统性能很好,生产系统为什么不行24

1.7.4 针对特定性能问题的标准解决方案24

1.7.5 只要资源充足,数据库性能就不会差24

1.7.6 只要数据库性能好,业务系统性能必然良好25

1.7.7 降低等待时间就可以提高业务系统性能25

第2章 Oracle性能优化方法论的发展27

2.1 基于局部命中率分析的优化方法论28

2.2 基于OWI的优化方法论29

2.2.1 OWI优化方法论简述29

2.2.2 OWI方法论的可检测体系30

2.2.3 OWI方法中wait event的发展31

2.3 响应时间分析优化方法论32

2.3.1 RTA方法论简述32

2.3.2 RTA方法论的不足和改善35

2.4 基于工作单元的响应时间分析优化方法论35

2.4.1 UOWTBA优化方法论的导入35

2.4.2 输入吞吐量指标的选择36

2.4.3 采用UOWTBA优化方法工作38

2.5 基于资源瓶颈分析的优化方法论38

2.5.1 基于资源瓶颈分析优化方法论简述38

2.5.2 主要的数据库服务资源供给39

2.5.3 有效运行资源瓶颈分析优化方法40

2.6 流程、资源和组件优化方法论41

2.6.1 吞吐量和响应时间关系曲线41

2.6.2 流程和流程响应分析41

2.6.3 资源分析43

2.6.4 组件45

第3章 流程分析之数据库登录流程46

3.1 数据库登录导致业务系统性能恶化案例分享46

3.2 数据库登录流程的相关指标与优化47

3.2.1 数据库登录流程的输入吞吐量和输出响应指标47

3.2.2 输入压力与输出响应之间的关系58

3.2.3 数据库登录流程响应问题的优化案例64

第4章 流程分析之数据访问处理流程67

4.1 数据访问处理流程优化案例分享68

4.2 数据访问处理流程的分解68

4.3 数据访问处理流程的输入和输出69

4.3.1 输入单元和输出单元的确定69

4.3.2 输入和输出指标的测量74

4.3.3 输入和输出指标的关系曲线79

4.4 数据访问流程优化步骤80

4.5 客户端运行和响应阶段80

4.5.1 子流程过程性分解80

4.5.2 子流程的输入和输出指标81

4.5.3 相关资源和组件84

4.5.4 业务请求和响应阶段优化案例84

4.6 SQL语句分析阶段(parse阶段)85

4.6.1 parse阶段子流程分解85

4.6.2 hard parse/soft parse/soft soft parse/no parse的区别87

4.6.3 SQL语句parse的高版本93

4.6.4 复杂语句和简单语句的parse差异96

4.6.5 parse阶段的输入/输出指标99

4.6.6 parse阶段的优化道路113

4.6.7 相关资源和组件121

4.6.8 parse阶段优化案例分析122

4.7 SQL语句执行阶段(execute阶段)123

4.7.1 SQL执行阶段子流程分解123

4.7.2 SQL执行子流程输入/输出指标144

4.7.3 SQL执行子流程的输入/输出指标衡量147

4.7.4 SQL执行阶段输入/输出关系图155

4.7.5 SQL执行阶段的优化道路158

4.7.6 SQL执行阶段相关资源和组件162

4.7.7 SQL执行阶段优化案例164

4.8 fetch次数对逻辑读的影响165

4.9 提交(Commit)阶段的流程分解和分析167

4.9.1 提交阶段的主要执行过程167

4.9.2 高并发性提交的响应问题169

4.9.3 提交阶段的优化道路174

第5章 资源175

5.1 简单的资源供给类176

5.1.1 资源使用的突变曲线176

5.1.2 资源的使用率和队列长度176

5.1.3 导致资源供给性能问题的主要场景177

5.2 并发性资源178

5.2.1 并发性资源效率的衡量178

5.2.2 主要的并发性资源和响应突变曲线178

第6章 资源供给:CPU179

6.1 简单案例分享179

6.2 CPU的特殊性179

6.3 CPU的工作和运行性能的衡量180

6.3.1 CPU的主要工作180

6.3.2 CPU运行性能的衡量:利用率和运行队列长度180

6.3.3 CPU的运行性能曲线180

6.4 CPU资源的主要衡量指标186

6.4.1 CPU的主要性能衡量指标186

6.4.2 CPU的主要性能衡量指标的测量187

6.4.3 CPU相关的主要Oracle指标189

6.5 几个CPU资源常见问题的讨论191

6.5.1 CPU资源的100%利用率191

6.5.2 CPU运行队列的长度标准191

6.5.3 CPU sys部分的资源消耗问题192

6.6 CPU资源优化的目标和道路193

6.6.1 CPU资源问题的场景和优化道路193

6.6.2 降低CPU的输入压力195

6.6.3 分布局部的CPU输入压力204

6.6.4 提高CPU处理效率204

6.6.5 合理调度平缓化CPU使用206

6.7 CPU资源优化案例206

第7章 资源供给:内存和虚拟内存208

7.1 简单案例分享208

7.2 物理内存和虚拟内存208

7.3 简单的虚拟内存管理209

7.3.1 工作存储分页和永久存储分页209

7.3.2 计算分页和非计算分页210

7.3.3 页面大小和大页管理215

7.3.4 进程内存管理218

7.4 虚拟内存运行性能的衡量221

7.4.1 虚拟内存运行性能221

7.4.2 虚拟内存的运行性能曲线222

7.5 虚拟内存资源的主要衡量指标225

7.5.1 虚拟内存的主要性能衡量指标225

7.5.2 虚拟内存主要性能衡量指标的测量226

7.5.3 虚拟内存相关的主要Oracle指标229

7.6 几个虚拟内存资源常见问题的讨论231

7.6.1 有128GB的内存,为什么自由空间还是很少231

7.6.2 Oracle业务系统环境下的文件系统缓冲231

7.6.3 如何从AWR报告中发现可能存在的虚拟问题232

7.6.4 如何检测和发现内存泄漏233

7.7 虚拟内存资源优化的目标和道路234

7.7.1 虚拟内存资源问题的场景和优化道路234

7.7.2 合理配置内存分配参数,避免发生swapin和swapout234

7.7.3 合理分配内存,让内存的使用处于安全可控的范围236

7.7.4 充分利用内存,提高业务处理程序运行效率237

7.7.5 合理调度业务程序,使内存使用平缓化238

7.8 虚拟内存资源优化案例239

第8章 资源供给:I/O子系统243

8.1 简单案例分享243

8.2 I/O子系统和构成243

8.3 卷管理器和文件系统245

8.3.1 卷管理器245

8.3.2 文件系统和逻辑卷246

8.4 HBA、 SAN交换机及其他存储系统链路通道249

8.4.1 HBA和SAN249

8.4.2 NIC和网络交换机250

8.4.3 IB和IB交换机250

8.5 磁盘和磁盘阵列251

8.5.1 磁盘251

8.5.2 磁盘的硬件基础性能衡量252

8.5.3 磁盘的iops和数据传输率253

8.5.4 磁盘平均队列长度254

8.5.5 磁盘阵列254

8.6 Raid和LUN255

8.7 磁盘多路径访问和基于存储的容灾复制影响258

8.7.1 磁盘多路径访问258

8.7.2 基于存储(卷)的容灾复制系统的影响259

8.8 固态硬盘和PCIe260

8.8.1 固态硬盘和传统机械硬盘260

8.8.2 SSD的简单结构261

8.8.3 固态硬盘不是机械设备261

8.8.4 固态硬盘不支持原址更新263

8.8.5 Oracle和固态硬盘263

8.9 随机访问和顺序访问266

8.10 基于Oracle数据库的存储系统设计269

8.10.1 Oracle online redo logfile和磁盘阵列269

8.10.2 临时表空间的存储设计269

8.10.3 OLTP业务系统或混合型业务系统269

8.10.4 数据仓库或DSS决策系统270

8.11 I/O子系统的运行性能衡量270

8.11.1 I/O子系统运行性能的衡量指标270

8.11.2 I/O子系统的运行性能曲线271

8.11.3 I/O资源主要性能衡量指标的测量272

8.11.4 I/O子系统相关的主要Oracle指标275

8.12 几个I/O子系统资源常见问题的讨论275

8.12.1 I/O资源极度紧张但I/O wait表现不高275

8.12.2 发现大量的磁盘Cache但似乎Oracle不理会276

8.12.3 磁盘利用率为100%,但处理能力还在不断上涨277

8.12.4 如何发现因存储系统导致的性能故障277

8.13 I/O子系统资源优化的目标和道路278

8.13.1 I/O资源问题的场景和优化道路278

8.13.2 明确存储故障,修正配置或修复存储278

8.13.3 降低存储系统的全局 I/O压力280

8.13.4 分布存储系统压力,使每个I/O设备处于合理范畴290

8.13.5 合理调度业务程序,使I/O资源使用平缓化291

8.14 I/O子系统资源优化案例291

第9章 资源供给:网络子系统294

9.1 简单案例分享294

9.2 网络子系统和构成294

9.2.1 网卡、网络交换机(路由器)和网络294

9.2.2 网络延迟和吞吐量296

9.2.3 高速内联网和业务网络297

9.2.4 在低速网络下运行业务298

9.3 网络协议:TCP、 UDP和NFS298

9.3.1 TCP298

9.3.2 UDP299

9.3.3 NFS299

9.4 网络参数配置和运行性能299

9.4.1 RTT、Bandwidth和BDP300

9.4.2 主要的网络参数300

9.4.3 主要的NFS参数304

9.5 网络带宽的扩展305

9.5.1 网卡绑定类型305

9.5.2 负载均衡模式网卡绑定配置306

9.5.3 负载均衡模式网卡绑定测试308

9.6 主要的网络性能监视工具309

9.7 网络子系统的运行性能衡量313

9.7.1 网络子系统运行性能的衡量指标313

9.7.2 网络子系统的运行性能曲线314

9.7.3 网络资源主要性能衡量指标的测量315

9.7.4 网络子系统相关的主要Oracle指标317

9.8 几个网络子系统资源常见问题的讨论317

9.8.1 系统中总是有SQLNet message from client事件317

9.8.2 如何发现过量的网络交互引起的响应缓慢318

9.8.3 C语言处理数据的效能远远低于数据库存储过程319

9.9 网络子系统资源优化的目标和道路319

9.9.1 网络资源问题的场景和优化道路319

9.9.2 明确网络故障,修正配置或修复存储320

9.9.3 降低网络系统的全局输入压力320

9.9.4 分布网络系统压力,使每个网络设备处于合理范畴322

9.9.5 设置最佳的网络配置参数,使网络设备运行效率最佳322

9.10 网络子系统资源优化案例322

第10章 资源供给:队列锁325

10.1 简单案例分享325

10.2 并发性控制和队列锁326

10.2.1 锁资源和锁资源的访问326

10.2.2 锁资源的感知327

10.2.3 队列锁相关的资源参数329

10.2.4 队列锁、事务锁和DML表格锁330

10.2.5 锁模式和意向锁330

10.2.6 主要的Oracle队列锁332

10.3 事务锁333

10.3.1 行锁和不加锁的一致性读334

10.3.2 TX锁冲突338

10.3.3 死锁345

10.3.4 基于TX lock的统计、事件和视图350

10.3.5 TX lock资源冲突的优化道路354

10.4 TM锁355

10.4.1 TM lock作用模式和作用场合356

10.4.2 dml locks参数和TM lock358

10.4.3 ora-00054和TM lock358

10.4.4 TM lock的统计、等待事件和视图359

10.4.5 TM lock资源的优化361

10.5 sequence相关的锁361

10.5.1 SQ lock361

10.5.2 sequence导致的row cache lock367

10.5.3 DFS lock handle和SV lock369

10.5.4 sequence相关的统计、等待事件和视图372

10.5.5 sequence相关锁资源的优化374

10.6 HW lock和ST lock375

10.6.1 高水位的概念和高水位的移动375

10.6.2 HW lock冲突378

10.6.3 HWM和全表扫描378

10.6.4 HW lock相关统计、等待事件和视图379

10.6.5 HW lock资源的优化之道381

10.7 CF lock382

10.7.1 CF lock的作用场景382

10.7.2 rman备份或控制文件自动备份和CF lock383

10.7.3 dump current redo log持有CF lock384

10.7.4 CF lock相关统计、等待事件和视图384

10.7.5 CF lock资源的优化之道385

10.8 US lock386

10.8.1 隐含参数undo autotune和参数undo retention386

10.8.2 事件10511和10512.388

10.9 RO lock388

10.9.1 RO lock资源性能的相关因素389

10.9.2 RO lock涉及的主要事件390

10.10 队列锁运行性能的衡量391

10.10.1 队列锁运行性能的衡量指标391

10.10.2 队列锁资源的运行性能曲线391

10.10.3 队列锁运行性能衡量指标的测量391

10.11 队列锁资源优化的目标和道路394

10.11.1 业务压力导致锁资源冲突394

10.11.2 业务不当导致过多持有队列锁395

10.11.3 持有队列锁的时间过长396

10.11.4 缺乏事物失败思维导致事务规模过大396

10.11.5 调度和运维不当导致队列锁长期持有396

10.11.6 拥有队列锁资源的进程处于僵死或不活动状态396

10.12 队列锁资源优化案例397

第11章 资源供给:row cache lock和library cache lock399

11.1 简单案例分享399

11.2 row cache lock和ddl lock399

11.2.1 row cache的组成399

11.2.2 row cachelock涉及的视图408

11.2.3 row cache lock冲突的排查408

11.3 library cache lock409

11.3.1 library cache lock和锁模式410

11.3.2 library cache lock的场景观察412

11.3.3 library cache lock涉及的视图420

11.3.4 library cache lock故障的排查和优化420

11.4 row cache lock和library cache lock运行性能的衡量420

11.4.1 row cache lock资源运行性能的衡量指标420

11.4.2 library cache lock资源运行性能的衡量指标421

11.4.3 row cache lock锁运行性能衡量指标的测量422

11.4.4 library cache lock运行性能衡量指标的测量423

11.5 row cache lock锁资源优化的目标和道路426

11.5.1 数据字典的变化426

11.5.2 降低row cache object的重载428

11.6 library cache lock锁资源的目标和道路428

11.7 row cache lock和library cache lock锁资源优化案例429

第12章 资源供给:buffer lock431

12.1 简单案例分享431

12.2 buffer header和buffer lock(pin)431

12.2.1 buffer header和buffer lock432

12.2.2 buffer lock的锁兼容433

12.3 buffer lock冲突的简单验证434

12.3.1 select和select操作435

12.3.2 select和update操作436

12.3.3 update和update之间437

12.4 buffer lock运行性能的衡量和测量439

12.4.1 buffer lock冲突的buffer block类型439

12.4.2 buffer lock资源运行性能的衡量指标441

12.4.3 buffer lock锁资源运行性能衡量指标的测量441

12.5 buffer lock锁资源优化的目标和道路442

12.5.1 降低buffer lock锁资源需求443

12.5.2 分散 buffer lock局部热点,降低buffer lock并发性冲突443

12.5.3 降低buffer lock的持有时间448

12.5.4 read by other session的buffer lock冲突448

12.6 buffer lock锁资源优化案例448

第13章 资源供给:latch450

13.1 简单案例分享450

13.2 并发性控制资源:latch或spinlock450

13.2.1 latch获得和释放的基本过程450

13.2.2 latch结构453

13.2.3 CAS、 TAS及latch的spin453

13.2.4 Willing-To-Wait和no-Wait latch455

13.3 latch的spin和spin count控制456

13.3.1 latch的spin和spin_count控制456

13.3.2 不同latch的spin count细粒度控制457

13.3.3 x$ksllclass视图和其他latch参数459

13.3.4 spin count参数的合理设置460

13.4 latch资源冲突和性能优化461

13.4.1 latch冲突的简单认知462

13.4.2 常见的latch冲突465

13.4.3 latch性能相关的统计数据465

13.4.4 几张主要的latch视图466

13.5 主要的latch资源场景和冲突468

13.5.1 Cache buffers chains latch468

13.5.2 cache buffer lru chains latch473

13.5.3 library cache (lock/pin) latch476

13.5.4 shared pool latch481

13.5.5 row cache objects latch490

13.5.6 undo global data latch501

13.5.7 object queue header operation latch和checkpoint queue latch505

13.6 latch资源运行性能的衡量506

13.7 latch资源优化的目标和道路507

13.7.1 降低latch资源需求508

13.7.2 分布热点latch资源513

13.7.3 降低latch资源的持有时间520

13.7.4 spin_ count和latch资源优化524

13.8 latch资源优化案例525

第14章 资源供给:mutex527

14.1 简单案例分享527

14.2 并发性控制资源:mutex527

14.2.1 Oracle 11gR2中包含的mutex528

14.2.2 mutex的工作方式529

14.3 mutex对应的wait event说明和场景532

14.3.1 mutex对应的wait event描述532

14.3.2 cursor: pin S事件533

14.3.3 cursor: mutex事件和library cache: mutex事件535

14.3.4 hash table mutex、cursor:mutex S|X和SQL高版本537

14.4 mutex资源冲突和性能优化538

14.4.1 常见的mutex冲突538

14.4.2 mutex性能相关的统计数据539

14.4.3 主要的mutex视图539

14.5 主要的mutex资源场景和冲突542

14.5.1 cursor pin mutex542

14.5.2 cursor parent mutex542

14.5.3 hash table mutex542

14.5.4 cursor stat mutex543

14.6 mutex资源的运行性能衡量和测量543

14.6.1 mutex资源运行性能衡量的主要指标543

14.6.2 mutex资源运行性能衡量指标的测量544

14.7 mutex资源优化的目标和道路545

14.7.1 降低mutex资源需求545

14.7.2 分布热点mutex资源547

14.7.3 减少mutex资源的持有时间550

14.8 mutex_spin_count、sleep time、scheme和mutex资源优化552

14.9 mutex资源优化案例553

热门推荐