图书介绍

Oracle Database10g性能调整与优化PDF|Epub|txt|kindle电子书版本网盘下载

Oracle Database10g性能调整与优化
  • (美)尼米克(Niemiec,R.J.)著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302189121
  • 出版时间:2009
  • 标注页数:869页
  • 文件大小:247MB
  • 文件页数:895页
  • 主题词:关系数据库-数据库管理系统,Oracle 10g

PDF下载


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

下载说明

Oracle Database10g性能调整与优化PDF格式电子书版下载

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

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

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

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

图书目录

第1章 Oracle Database 10g新功能介绍(针对DBA和开发人员)1

1.1安装改进3

1.2 SYSAUX表空间3

1.3自动存储管理4

1.4集群就绪服务(CRS)5

1.5服务器生成的警报6

1.6自动工作量仓库(AWR)7

1.7自动数据库诊断监控程序(ADDM)7

1.8 SQL调整顾问9

1.9自动共享内存管理(ASMM)10

1.10闪回恢复区11

1.11回收站12

1.12恢复管理器的改动13

1.13透明数据加密(10gR2)14

1.14 LogMiner的改动15

1.15 新的DBMS_STATS选项16

1.16跟踪增强17

1.17 DBMS_SCHEDULER18

1.18默认的(永久)表空间19

1.19临时表空间组20

1.20重命名表空间20

1.21大文件表空间21

1.22收缩段21

1.23数据泵(Data Pump)22

1.24跨平台的可移植表空间23

1.25写入外部表23

1.26自动撤消保留调整24

1.27包括新信息的V$SESSION24

1.28 OEM的改动25

1.29网格控制25

1.30 10g版本中的新后台进程26

1.31版本比较表26

1.32新特性回顾30

1.33参考文档31

第2章 基本的索引原理(针对DBA和初级开发人员)32

2.1基本的索引概念33

2.2组合索引35

2.3限制索引36

使用不等于运算符(<>、!=)37

使用IS NULL或IS NOT NULL37

使用函数38

比较不匹配的数据类型39

2.4选择性40

2.5集群因子(Clustering Factor)40

2.6二元高度(binary height)41

2.7使用直方图42

2.8快速全局扫描43

2.9跳跃式扫描44

2.10索引的类型45

B树索引45

位图索引46

HASH索引48

索引组织表49

反转键索引50

基于函数的索引50

分区索引51

位图连接索引53

2.11快速重建索引54

2.12技巧回顾55

2.13参考文档56

第3章 磁盘实现方法和ASM(针对DBA)57

3.1成为规范的磁盘阵列58

使用磁盘阵列改进性能和可用性58

所需的磁盘数量59

可用的RAID级别59

更新的RAID 560

3.2安装和维护传统文件系统61

3.3在硬件磁盘之间分布关键数据文件62

分开存储数据和索引文件62

避免I/O磁盘争用63

通过移动数据文件来均衡文件I/O64

3.4本地托管的表空间65

创建本地托管的表空间65

把字典托管的表空间迁移66

到本地托管的表空间66

Oracle大文件表空间67

Oracle托管文件67

3.5 ASM简介68

I/O角色之间的通信69

ASM实例70

ASM init.ora参数70

ASM的安装70

ASM参数和SGA调整71

ASM和权限71

ASM磁盘72

ASM和多路径73

ASM磁盘组74

ASM磁盘组和数据库76

ASM冗余和故障组76

Oracle Database 10gRelease 2中新的空间相关列78

集群同步服务78

数据库实例和ASM78

使用ASM进行数据库合并和集群化79

支持ASM的数据库进程80

大文件和ASM80

支持ASM的数据库init.ora参数80

ASM和数据库部署最佳实践81

ASM存储管理和分配81

ASM重新平衡和重新分布82

3.6使用分区来避免磁盘争用84

获得关于分区的更多信息86

其他类型的分区86

其他分区选项89

3.7使用索引分区91

3.8导出分区92

3.9消除碎片92

使用正确的盘区大小93

创建一个新表空间并把数据移到其中93

导出和重新导入表94

正确设定比例以避免链化现象95

自动段空间管理96

重建数据库97

3.10增加日志文件尺寸和LOG_CHECKPOINT_INTERVAL以提高速度97

确定重做日志文件的大小是否存在问题98

确定日志文件的大小和检查点的时间间隔98

3.11闪回恢复100

3.12增加恢复的可能性:在每次批处理后提交101

3.13使用回滚段101

避免回滚段之间的争用101

监控回滚段的等待和争用102

增加回滚段102

把大的事务隔离到它们自己的回滚段上102

更简便的方法:UNDO表空间103

监控UNDO空间104

3.14结束有问题的会话104

3.15不要在SYSTEM或SYSAUX表空间中执行排序105

3.16在不同磁盘和控制器上存放多个控制文件106

3.17对写操作频繁的数据使用裸设备来提高I/O107

使用裸设备的好处107

使用裸设备的缺点107

3.18磁盘I/O的其他注意事项和提示107

3.19设计阶段需要注意的问题108

3.20技巧回顾108

3.21参考文档110

第4章 用初始参数调整数据库(针对DBA)111

4.1标识重要的初始参数112

4.2不用重启就修改初始参数113

4.3用Enterprise Manager查看初始参数114

4.4调整DB_CACHE_SIZE来提高性能115

在调整DB_CACHE_SIZE时使用V$DB_CACHE_ADVICE117

保证数据缓存命中率超过95%118

监控V$SQLAREA视图以查找较慢的查询118

4.5设定DB_BLOCK_SIZE来反映数据读取量的大小121

调整SHARED_POOL_SIZE以优化性能122

使用Oracle的多个缓冲池131

调整PGA_AGGREGATE_TARGET以优化对内存的应用133

修改SGA大小以避免分页和交换134

了解基于成本的优化134

创建足够的调度程序135

25个重要的初始化参数136

查找未归档的初始参数138

了解典型的服务器139

典型的服务器模式140

调整Oracle Application数据库141

4.6技巧回顾142

4.7参考文档143

第5章 企业管理器和网格控制(针对DBA和开发人员)144

5.1企业管理器(EM)基础145

5.2从All Targets和其他分组开始148

5.3 Policies (Violations)选项卡151

5.4监控数据库152

Database Administration选项卡160

Database Administration选项卡:Tablespace161

Database Administration选项卡:实例级别164

Database Administration选项卡:All InitializationParameters164

Database Administration选项卡:Manage OptimizerStatistics165

Database Administration选项卡(实例级别):169

Database Maintenance选项卡169

Database Topology选项卡170

Database Performance选项卡172

5.5监控主机180

5.6监控应用服务器182

5.7监控Web应用程序186

5.8 Deployments选项卡(补丁选项)189

5.9 Jobs选项卡191

5.10 Reports选项卡192

5.11自动存储管理的性能195

5.12小结197

5.13技巧回顾197

5.14参考文档198

第6章 使用EXPLAIN和STOREDOUTLINES(针对DBA和开发人员)199

6.1 Oracle的SQL TRACE实用程序200

对简单查询使用SQL TRACE的简单步骤200

TRACE输出部分205

更复杂的TKPROF输出206

深入探讨TKPROF输出207

使用DBMS_MONITOR(10g的新特性)209

使用TRCSESS将多个跟踪文件保存到一个文件中(10g的新特性)211

单独使用EXPLAINPLAN212

EXPLAIN PLAN——从上至下读取和从下至上读取215

阅读EXPLAIN PLAN216

使用DBMS_XPLAN220

另一种EXPLAIN PLAN输出方法:构建树结构221

另一个使用树的例子222

在开发产品中利用TRACE/EXPLAIN发现有问题的查询225

PLAN_TABLE表中的重要列225

Oracle支持的一些有用的程序包227

适用于未记录入档的TRACE操作的初始参数227

使用存储纲要229

使用Plan Stabiliry(存储纲要)233

6.2技巧回顾236

第7章 基本的提示语法(针对DBA和开发人员)238

7.1最常用的提示239

谨慎使用提示240

首先修正设计方案240

7.2可用的提示和分组241

改变执行路径241

使用访问方法提示241

使用查询转换提示242

使用连接操作提示242

使用并行执行243

其他提示243

7.3指定提示244

7.4指定多个提示245

7.5使用别名时,提示别名而不是表名245

7.6使用提示245

使用FIRST_ROWS提示246

使用ALL_ROWS提示247

使用FULL提示247

使用INDEX提示248

使用NO_INDEX提示249

使用INDEX_JOIN提示250

使用INDEX_COMBINE提示251

使用INDEX_ASC提示251

使用INDEX_DESC提示252

使用INDEX_FFS提示252

使用ORDERED提示253

使用LEADING提示254

使用NO_EXPAND提示254

使用DRIVING_SITE提示255

使用USE_MERGE提示256

使用USE_NL提示257

使用USE_HASH提示257

使用PUSH_SUBQ提示258

使用PARALLEL提示259

使用NO_PARALLEL提示260

使用APPEND提示260

使用NOAPPEND提示261

使用CACHE提示261

使用NOCACHE提示262

使用CLUSTER提示262

使用HASH提示263

使用CURSOR_SHARING_EXACT提示263

使用QB_NAME提示264

7.7其他一些提示和注意事项264

7.8使用提示可能遇到的问题265

7.9提示一览表266

7.10技巧回顾267

7.11参考文档268

第8章 调整查询(针对开发人员和初级DBA)270

8.1调整哪些查询?查询V$SQLAREA271

在V$SQLAREA视图中选出最占用资源的查询271

在V$SQL视图中选出最占用资源的查询272

8.2选出最占用资源的会话和查询的新10g视图273

从V$SESSMETRIC视图中选出当前最占用资源的会话273

查看可用的AWR快照274

从DBA_HIST_SQLSTAT视图中选出最占用资源的查询274

从dba_hist_sqlstat视图中选择查询文本275

从DBA_HIST_SQL_PLAN视图中选出查询执行计划275

8.3确定何时使用索引276

8.4遗忘索引277

8.5创建索引277

8.6查看表上的索引278

8.7修正差的索引279

8.8在删除索引时保持谨慎280

8.9对SELECT和WHERE中的列使用索引280

8.10使用快速全局扫描282

8.11使查询魔术般加速282

8.12在内存中缓存表283

8.13使用多个索引(利用最佳选择性)284

8.14使用索引合并286

8.15 处理受限制的索引287

8.16使用基于函数的索引288

8.17了解“古怪”的OR289

8.18使用EXISTS函数290

8.19表就是视图291

8.20 SQL和“大一统”理论292

8.21 Oracle Database 10g中的调整修改292

8.22 10g自动SQL调整292

保证调整用户能访问API293

创建调整任务293

查看顾问日志中的任务293

执行SQL调整任务294

查看调整任务的状态294

显示SQL调整顾问报告294

检查报告输出294

8.23技巧回顾297

8.24参考文档298

第9章 表的连接和其他高级调整技术(针对DBA和开发人员)299

9.1连接方法300

嵌套循环连接301

排序合并连接302

集群连接303

散列连接303

索引连接304

9.2表连接的初始化参数306

排序合并与散列连接参数307

9.3双表连接:等尺寸表(基于成本)307

9.4双表索引连接:等尺寸表(基于成本)310

9.5强制执行特殊的连接方法312

9.6在多表连接中除去连接记录(侯选行)315

9.7在大小不同的表间进行双表连接316

9.8三表连接(基于成本)319

9.9位图连接索引321

9.10第三方性能调整工具327

9.11调整分布式查询330

9.12一切就绪332

9.13各种调整技术摘要333

外部表333

数据快照太旧:开发人员的编程难题337

设置事件以转储每次等待338

使用EXISTS操作符有效缩短时间339

9.14在块级别进行调整341

9.15使用简单的数学方法调整性能349

传统的数学分析349

方法论的七个步骤349

模式分析355

数学方法总结360

9.16连接调整:关系模型与对象关系模型的性能360

使用的模型362

结果362

总结370

9.17技巧回顾372

9.18参考文档372

第10章 使用PL/SQL提高性能(针对DBA和开发人员)374

10.1使用DBMS_APPLICATION_INFO进行实时监控376

10.2在RAC环境中为实时监控使用自定义包代替DBMS_APPLICATION_INFO378

10.3在数据库的表中记录计时信息390

10.4减少PL/SQL程序的单元迭代和迭代的时间392

10.5使用ROWID进行迭代处理395

10.6将数据类型、IF语句的排列和PLS_INTEGER396

确保比较运算中的数据类型相同397

根据条件出现的频率来排序IF条件398

使用PLS_INTEGERPL/SQL数据类型进行整数运算399

10.7减少对SYSDATE的调用400

10.8减少MOD函数的使用401

10.9共享池和固定PL/SQL对象403

将PL/SQL对象语句固定(缓存)到内存中404

固定所有的包404

10.10标识需要固定的PL/SQL对象405

10.11使用和修改DBMS_SHARED_POOL.SIZES406

10.12从DBA_OBJECT_SIZE中获取详细的对象信息407

10.13发现无效的对象408

10.14发现已禁用的触发器409

10.15将PL/SQL表用于快速参考表查询410

10.16查找和调整所使用对象的SQL413

10.17在处理DATE数据类型时使用时间信息416

10.18调整和测试PL/SQL418

10.19了解PL/SQL对象定位的含义419

10.20使用回滚段打开大型游标420

10.21使用数据库的临时表来提高性能422

10.22集成用户跟踪机制以定位执行位置422

10.23限制动态SQL的使用423

10.24使用管道表函数来建立复杂结果集423

10.25别管调试命令428

10.26为初学者提供的例子434

创建PL/SQL代码434

创建过程435

执行PL/SQL过程435

创建函数435

在SQL中执行GET_CUST_NAME函数436

创建数据包436

在数据库触发器中使用PL/SQL436

10.27技巧回顾436

10.28参考文档438

第11章 调整RAC和使用并行特性439

11.1实时应用集群(RAC)440

并行数据库440

Oracle RAC的体系结构441

Oracle RAC系统的内部工作方式443

SCN处理445

RAC性能调整概述446

RAC等待事件和互连统计数据448

集群互连调整——硬件等级453

使用企业管理器网格控制调整RAC459

11.2并行操作的基本概念465

11.3并行DML和DDL语句和操作466

11.4 Oracle 9i的并行DML语句和操作467

11.5并行处理和分区467

11.6操作内部和操作之间的并行处理468

11.7使用并行操作生成表和索引的示例470

11.8并行DML语句和示例472

并行DML的约束条件473

并行DML语句示例473

11.9通过V$视图监控并行操作475

V$PQ_TQSTAT475

V$PQ_SYSSTAT476

V$PQ_SESSTAT478

11.10在并行操作时使用EXPLAIN PLAN和AUTOTRACE479

11.11调整并行执行和Oracle 9i初始化参数484

11.12并行加载487

11.13性能比较和监控并行操作488

11.14优化RAC中的并行操作490

并行操作的目标490

RAC并行使用模型491

初始化参数491

查看并行统计数据的V$视图491

并行配置和相关基线测试492

并行查询测试示例492

Create Table As495

索引构建495

性能考虑因素和小结495

11.15 使用并行处理时的其他注意事项495

11.16技巧回顾496

11.17参考文档498

第12章 V$视图(针对开发人员和DBA)499

12.1 V$视图的创建和访问500

获得所有V$视图的数量和列表503

查找用于创建V$视图的X$表504

查找组成DBA_视图的底层对象505

使用有帮助的V$脚本507

内存分配摘要(V$SGA)511

内存分配的细节(V$SGASTAT)512

在V$PARAMETER中发现init.ora的设置513

测定数据的命中率(V$SYSSTAT)514

测定数据字典的命中率(V$ROWCACHE)515

测定共享SQL和PL/SQL的命中率(V$LIBRARYCACHE)516

确定需要固定的PL/SQL对象517

通过V$SQLAREA查找有问题的查询518

检查用户的当前操作及其使用的资源519

查找用户正在访问的对象520

使用索引522

确定锁定问题523

关闭有问题的会话525

查找使用多会话的用户526

查找磁盘I/O问题527

查找回滚段的内容530

检查空闲列表是否充足532

检查角色和权限设置533

等待事件V$视图535

一些主要的V$视图种类538

12.2技巧回顾544

12.3参考文档546

第13章 X$表(针对高级DBA)547

13.1 X$表介绍548

有关X$表的误解549

授权查看X$表550

13.2创建V$视图和X$表551

13.3获得所有X$表的列表553

13.4获得所有的X$索引列表554

13.5对X$表和索引使用提示555

13.6共享池556

13.7监控共享池的查询557

ORA-04031错误558

空间分配过大而引起的争用558

共享池碎片化559

共享池和/或Java池中空闲内存过低560

库缓存命中率561

大量的硬分析563

闩锁等待和/或休眠564

其他调整选项565

13.8重做566

13.9初始化参数566

13.10缓存/数据块570

缓存状态570

占用数据块缓存的段572

热数据块/闩锁争用和等待事件574

13.11实例/数据库578

13.12高效使用X$表及其策略579

13.13相关的Oracle内部机制580

跟踪580

DBMS_TRACE包583

事件584

转储584

ORADEBUG585

trcsess工具587

13.14阅读跟踪文件588

等待信息和响应时间590

递归调用591

模块信息591

提交592

Unmap592

绑定变量592

错误593

13.15 X$表的分组593

13.16 X$表及相关的非V$固定视图607

13.17常见的X$表连接609

Oracle 10gR1中新增的X$表611

Oracle 10gR2中新增的X$表612

13.18 X$表的命名约定613

13.19技巧回顾621

13.20参考文档621

第14章 使用STATSPACK和AWR报表调整等待和闩锁623

14.1 1 0gR2 (10.2) STATSPACK的新特性624

14.2 10gR1 (10.1) STATSPACK的新特性625

14.3安装STATSPACK625

PERFSTAT账户的安全管理626

安装之后627

搜集统计数据627

运行统计数据报表630

14.4自动工作量仓库(AWR)和AWR报表631

手动管理AWR632

AWR自动快照633

AWR快照报表633

在Oracle企业管理器网格控制中运行AWR报表635

14.5解释STATSPACK的输出结果638

报表头信息638

负载简档639

实例的效率641

首要等待事件644

Oracle Bugs652

Oracle影子进程的生命周期652

RAC等待事件和互连统计数据653

首要的SQL语句654

实例活动统计数据656

表空间和文件I/O的统计数据661

段统计数据662

其他的内存统计数据663

撤消统计数据665

闩锁统计数据666

在块级别调整和查看(高级)672

数据字典和库缓存的统计数据675

SGA内存统计数据677

非默认的初始化参数678

14.6 AWR报表和STATSPACK输出结果中需680

管理STATSPACK数据680

升级STATSPACK681

删除STATSPACK681

14.7新ADDM报表的快速注释681

14.8 10gR2脚本683

14.9技巧回顾684

14.10参考文档685

第15章 执行快速系统检查(针对DBA)686

15.1总体性能指数(TPI)687

15.2教育性能指数(EPI)688

15.3系统性能指数(SPI)689

15.4内存性能指数(MPI)691

缓冲区命中率692

数据字典缓存命中率694

库缓存命中率694

PGA内存排序命中率695

空闲的数据缓冲区的比例696

最浪费内存的前10个语句占所有语句的比例697

调整前25个最浪费内存的语句698

固定/缓存对象699

15.5磁盘性能指数(DPI)700

调整滥用磁盘读操作的25个主要语句700

最浪费磁盘读操作的前10个语句占所有语句的比例701

表/索引的分离703

关键任务表管理703

分离关键的Oracle文件704

自动撤消管理704

临时段的平衡707

15.6总体性能指数(TPI)708

15.7系统综合检查的示例709

评级系统709

系统检查评级分类的示例710

需要立刻解决的问题项711

其他需要解决的问题项712

15.8系统信息列表712

与内存有关的值712

与磁盘有关的值713

与CPU有关的值713

与备份和恢复有关的信息713

命名约定和/或标准以及安全信息714

DBA知识评级714

15.9 TPI和系统检查需要考虑的其他项715

15.10技巧回顾715

15.11参考文档716

第16章 使用UNIX工具监控系统(针对DBA)717

16.1 Unix/Linux工具718

16.2使用sar命令监控CPU的使用718

sar-u(检查CPU沉重程度)718

sar-d命令(查找I/O问题)720

sar-b命令(检查缓存)722

sar-q命令(检查运行队列和交换队列的长度)723

16.3使用sar命令和vmstat命令监控分页/交换723

使用sar命令的-w选项报告分页活动724

使用sar命令的-c选项报告交换和切换活动724

使用sar命令的-r选项报告空闲内存和空闲交换725

使用sar命令的-g选项报告分页活动725

使用sar命令的-wpgr选项726

16.4使用top命令发现系统中最影响性能的用户728

16.5使用uptime命令监控CPU的负载729

16.6使用mpstat命令确定CPU瓶颈730

16.7将ps命令与已选出的V$视图相结合731

16.8使用iostat命令确定磁盘I/O瓶颈734

为磁盘驱动器sd15、sd16、sd17和sd18使用iostat的-d选项734

使用iostat的-D选项734

使用iostat的-x选项734

将iostat的-x选项与shell脚本中的逻辑相结合735

16.9使用ipcs命令确定共享内存的使用情况736

16.10使用vmstat命令监控系统的负载737

16.11监控磁盘空闲空间738

16.12监控网络性能740

使用spray命令监控742

使用nfsstat-c监控网络性能743

使用netstat监控网络性能744

显示可调整参数的当前值745

修改配置信息文件747

影响性能的其他因素747

16.13技巧回顾749

16.14参考文档749

附录A 主要的初始化参数(针对DBA)750

A.1不再支持的初始化参数751

A.2不建议使用的初始化参数752

A.3 25个最重要的初始化参数752

A.4必须记住的最重要的10个初始化参数754

A.5最重要的13个未入档的初始化参数755

A.6已入档的初始化参数列表(V$PARAMETER)757

A.7未入档的初始化参数列表(x$ksppi/x$ksppcv)767

A.8 Oracle应用程序11i建议(注释:216205.1)767

A.9不写书的10个重要原因772

A.10技巧回顾773

A.11参考文档773

附录B V$视图(针对DBA和开发人员)774

B.1 V$视图、GV$视图和X$表的创建775

B.2 Oracle 10g (10.2.0.1)GV$和V$视图列表775

B.3 Oracle 10g (10.2.0.1)V$视图781

B.4用于创建V$视图的X$表的Oracle 10g脚本786

附录C X$表(针对DBA)843

C.1按名称排序的Oracle 10g X$表844

C.2 Oracle 10gX$索引850

C.3交叉引用X$表的Oracle 10gV$视图862

C.4 GV$视图没有引用的Oracle10g X$表866

热门推荐