图书介绍

SQL Server性能优化与管理的艺术2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

SQL Server性能优化与管理的艺术
  • 黄钊吉著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111473244
  • 出版时间:2014
  • 标注页数:481页
  • 文件大小:68MB
  • 文件页数:494页
  • 主题词:关系数据库系统

PDF下载


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

下载说明

SQL Server性能优化与管理的艺术PDF格式电子书版下载

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

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

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

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

图书目录

第一部分 SQL Server性能优化概述2

第1章 性能概述2

1.1 何为性能2

1.2 性能指标3

1.3 性能目标3

1.4 影响性能的常见因素4

1.4.1 应用程序的体系结构4

1.4.2 应用程序设计5

1.4.3 事务和隔离级别5

1.4.4 T-SQL代码5

1.4.5 硬件资源6

1.4.6 SQL Server配置6

1.5 小结8

第2章 初探优化9

2.1 优化论9

2.2 定义问题10

2.2.1 使用工具找到性能瓶颈12

2.2.2 通过性能数据进行分类12

2.3 根据性能数据分析问题14

2.4 验证处理手段及部署14

2.5 问题归档15

2.6 小结15

第二部分 SQL Server性能优化理论知识18

第3章 体系结构18

3.1 SQL Server查询体系18

3.2 数据库事务22

3.2.1 事务特性22

3.2.2 事务类型22

3.3 查询的生命周期23

3.3.1 SQL Server组件23

3.3.2 缓冲池23

3.3.3 简单的SELECT查询过程23

3.4 执行模型28

3.5 SQLOS30

3.6 SQL Server内存30

3.6.1 物理内存和虚拟内存30

3.6.2 SQL Server内存32

3.6.3 内存问题诊断34

3.6.4 优化SQL Server内存配置34

3.6.5 优化Ad-Hoc工作负载36

3.7 小结38

第4章 硬件资源39

4.1 CPU39

4.1.1 SQL Server工作负载类型39

4.1.2 CPU评估40

4.1.3 CPU配置43

4.2 存储系统43

4.2.1 磁盘I/O43

4.2.2 驱动器类型44

4.2.3 RAID配置45

4.2.4 配置存储系统46

4.2.5 检查读写速率46

4.3 CPU性能侦测48

4.3.1 侦测CPU压力48

4.3.2 研究CPU相关的等待信息49

4.3.3 查找CPU消耗高的查询50

4.3.4 常见高CPU利用率的原因51

4.4 I/O性能侦测59

4.5 小结59

第5章 查询优化器60

5.1 查询过程60

5.2 查询优化器62

5.2.1 产生执行计划62

5.2.2 连接63

5.3 执行引擎66

5.3.1 数据访问操作66

5.3.2 聚合操作70

5.3.3 并行执行73

5.4 统计信息和开销预估73

5.4.1 统计信息73

5.4.2 统计信息维护77

5.4.3 计算列上的统计信息78

5.4.4 过滤索引上的统计信息79

5.4.5 预估数量错误81

5.4.6 更新统计信息81

5.5 优化器工作过程83

5.6 小结88

第6章 索引及统计信息89

6.1 索引基础90

6.1.1 为什么要索引90

6.1.2 索引的主要类型91

6.1.3 索引元数据91

6.2 索引存储基础92

6.2.1 SQL Server存储基础92

6.2.2 页的组织95

6.2.3 检查工具98

6.2.4 页碎片110

6.3 索引统计信息113

6.3.1 索引层级的统计信息113

6.3.2 索引使用的统计信息117

6.3.3 索引操作的统计信息120

6.3.4 索引物理统计信息126

6.4 索引误区及使用建议127

6.4.1 常见误区127

6.4.2 索引使用建议135

6.4.3 关于索引的查询建议137

6.5 索引维护143

6.5.1 索引碎片143

6.5.2 索引统计信息维护155

6.6 索引工具156

6.6.1 缺失索引DMO156

6.6.2 使用DMO158

6.6.3 数据库引擎优化顾问159

6.6.4 使用DMO侦测索引问题162

6.7 索引策略165

6.7.1 堆165

6.7.2 聚集索引167

6.7.3 非聚集索引168

6.7.4 索引存储182

6.7.5 索引视图185

6.8 索引分析187

6.8.1 索引方法论187

6.8.2 监控188

6.8.3 分析199

6.8.4 实施212

6.8.5 重复213

6.9 案例213

6.10 小结215

第7章 等待216

7.1 等待简介217

7.1.1 什么是等待217

7.1.2 为什么需要等待信息218

7.1.3 保存等待信息218

7.2 查询等待219

7.3 并行执行219

7.3.1 CXPACKET220

7.3.2 CXPACKET潜在问题221

7.3.3 降低CXPACKET等待221

7.3.4 CXPACKET深度分析222

7.3.5 CXPACKET建议222

7.4 多任务等待223

7.4.1 SOS_SCHEDU-LER_YIELD223

7.4.2 多任务类型225

7.4.3 多任务潜在问题226

7.4.4 降低多任务等待226

7.5 I/O等待227

7.6 备份和还原等待231

7.7 锁定等待231

7.8 数据库日志等待233

7.9 外部资源等待235

7.10 其他常见的等待类型237

7.11 小结238

第8章 执行计划239

8.1 基础知识239

8.1.1 查询提交240

8.1.2 预估与实际执行计划241

8.1.3 执行计划重用242

8.1.4 清除缓存的执行计划243

8.1.5 执行计划格式243

8.1.6 使用DMO获取缓存中的执行计划243

8.1.7 使用SQL Trace自动获取执行计划244

8.2 图形化执行计划244

8.2.1 基础知识245

8.2.2 单表查询245

8.2.3 表关联252

8.2.4 筛选数据256

8.2.5 常见操作符258

8.2.6 INSERT/UPDATE/DELETE的执行计划261

8.2.7 复杂查询264

8.3 控制执行计划280

8.3.1 查询提示281

8.3.2 联接提示293

8.3.3 表提示297

8.4 扩展信息298

8.4.1 阅读庞大的执行计划298

8.4.2 并行操作305

8.4.3 强制参数化306

8.4.4 使用计划指南307

8.5 案例313

8.6 小结316

第9章 锁、阻塞和死锁317

9.1 并发和事务318

9.1.1 悲观并发和乐观并发319

9.1.2 事务320

9.1.3 丢失更新325

9.2 锁的基础327

9.2.1 锁定概述327

9.2.2 锁资源/锁类型328

9.2.3 锁模式329

9.2.4 锁的持续时间330

9.2.5 锁的所有权330

9.2.6 锁的元数据331

9.3 高级锁概念332

9.3.1 锁兼容性332

9.3.2 锁模式转换333

9.3.3 意向锁335

9.3.4 键范围锁335

9.3.5 锁升级336

9.3.6 其他类型的锁338

9.3.7 非锁定引起的阻塞339

9.4 控制锁行为339

9.4.1 通过隔离级别控制并发性和锁定行为340

9.4.2 设定锁的超时时间340

9.4.3 锁提示341

9.5 悲观并发的故障侦测341

9.5.1 侦测锁定341

9.5.2 阻塞的故障排查344

9.6 乐观并发348

9.6.1 行版本存储349

9.6.2 行版本存储工作机制349

9.6.3 基于快照的隔离模式349

9.6.4 监控和管理版本存储350

9.6.5 管理版本存储351

9.6.6 选择并发模式353

9.7 死锁354

9.7.1 死锁类型354

9.7.2 自动死锁侦测356

9.7.3 捕获死锁356

9.7.4 读懂死锁图363

9.7.5 最小化死锁364

9.8 监控和处理366

9.8.1 使用DMV捕获阻塞信息366

9.8.2 使用Extended Events和blocked_process_report事件捕获368

9.8.3 阻塞问题解决方案368

9.8.4 建议369

9.9 小结371

第10章 TempDB372

10.1 TempDB简介372

10.1.1 TempDB是什么372

10.1.2 什么操作会用到TempDB373

10.2 TempDB上的常见问题及监控378

10.2.1 空间问题378

10.2.2 TempDB的I/O瓶颈382

10.2.3 过多的DDL操作导致系统表上的瓶颈383

10.3 优化TempDB383

10.3.1 配置TempDB384

10.3.2 优化TempDB385

10.3.3 扩充阅读386

10.4 小结386

第三部分 工具使用388

第11章 使用传统工具定位瓶颈388

11.1 使用性能监视器及PAL收集和分析性能389

11.1.1 性能监视器389

11.1.2 数据收集器集392

11.1.3 使用PAL分析403

11.2 使用DMO获取性能数据407

11.2.1 DMO介绍407

11.2.2 示例407

11.3 使用Profiler获取性能数据414

11.3.1 用法及注意事项414

11.3.2 Profiler示例416

11.3.3 SQL Trace示例419

11.4 DBCC命令422

11.4.1 DBCC SQLPERF422

11.4.2 DBCC INPUTBUFFER424

11.4.3 DBCC TRACEON/TRACEOFF425

11.4.4 DBCC SHOWCONTIG425

11.4.5 DBCC OPENTRAN426

11.5 小结427

第12章 使用新工具定位瓶颈428

12.1 PSSDIAG428

12.2 PowerShell434

12.2.1 简介434

12.2.2 打开PowerShell434

12.2.3 使用PowerShell侦测服务器问题435

12.3 小结438

第13章 Extended Events439

13.1 简介439

13.2 创建扩展事件444

13.3 查询收集的数据449

13.3.1 监视实时数据449

13.3.2 使用T-SQL查看451

13.4 案例452

13.5 小结458

第14章 其他工具459

14.1 SQLDiag459

14.2 数据库性能优化顾问462

14.2.1 使用DTA进行单查询分析462

14.2.2 使用DTA进行全库分析466

14.3 Windows事件日志及SQL Server Errorlog470

14.3.1 Windows事件日志470

14.3.2 SQL Server错误日志471

14.4 小结472

第15章 优化服务器配置473

15.1 数据库工作负载特点473

15.1.1 基础知识473

15.1.2 工作负载配置474

15.2 工作负载优化步骤477

15.2.1 数据库设计477

15.2.2 查询设计478

15.2.3 数据库服务器配置478

15.2.4 数据库管理479

15.2.5 数据库备份480

15.3 小结481

热门推荐