SQL Server 数据库经典译丛

出版日期:2013-12-1
ISBN:9787302342318
作者:波尔顿 (Christian Bolton),Justin Langford,Glenn Berry,Gavin Payne,等
页数:490页

内容概要

Christian Bolton担任Coeo公司技术总监,是微软认证架构师、微软认证大师和SQL Server MVP。
Justin Langford担任Coeo公司总监,是SQL Server MVP,也是一位作家。
Glenn Berry担任SQLSkills.com公司首席顾问,是SQL Server MVP,也是一位作家。
Gavin Payne担任Coeo公司的高级顾问,是SQL Server领域的微软认证大师。
Amit Banerjee是微软的高级现场工程师,也是Troubleshooting- SQL.com网站的所有者。
Rob Farley是LobsterPot Solutions公司所有者,担任PASS董事,是SQL Server MVP。

书籍目录

第I部分 内核
第1章 SQL Server体系结构
3
1.1 简介
3
1.2 数据库事务
4
1.2.1 ACID属性
4
1.2.2 SQL Server事务
5
1.3 一个查询的生命周期
5
1.3.1 关系引擎和存储引擎
6
1.3.2 缓冲池
6
1.3.3 一个基本的Select查询
7
1.3.4 一个简单的更新查询
15
1.3.5 恢复
17
1.4 SQL Server的执行模式和SQLOS
21
1.4.1 执行模式
22
1.4.2 SQLOS
24
1.5 本章小结
25
第2章 硬件揭秘
27
2.1 硬件的重要性
27
2.2 工作负荷如何影响硬件及存储考虑事项
28
2.2.1 工作负荷的类型
28
2.2.2 服务器选型
30
2.2.3 服务器型号的演变
30
2.3 处理器厂商的选择
32
2.3.1 Intel处理器
33
2.3.2 AMD处理器及编号
41
2.4 为冗余选择及配置硬件
43
2.5 硬件比较工具
45
2.5.1 TPC-E基准
45
2.5.2 Geekbench基准测试
47
2.6 本章小结
47
第3章 理解内存
49
3.1 简介
49
3.2 物理内存和虚拟内存
50
3.2.1 物理内存
50
3.2.2 最大支持的物理内存
51
3.2.3 虚拟内存
51
3.2.4 NUMA
55
3.3 SQL Server内存
59
3.3.1 内存节点
60
3.3.2 内存分配员、缓存和缓冲池
60
3.4 优化SQL Server内存配置
66
3.4.1 最小服务器内存和最大服务器内存
66
3.4.2 锁定内存页
68
3.4.3 即席式工作负荷优化
70
3.5 本章小结
72
第4章 存储系统
73
4.1 简介
73
4.2 SQL Server I/O
74
4.3 存储技术
74
4.3.1 SQL Server和Windows I/O子系统
78
4.3.2 选择合适的存储网络
80
4.3.3 共享存储阵列
82
4.3.4 容量优化
82
4.3.5 分层存储
84
4.3.6 数据复制
85
4.3.7 远程数据复制
88
4.3.8 Windows故障转移群集
89
4.3.9 SQL Server AlwaysOn可用性组
90
4.3.10 风险缓解计划
91
4.4 测量性能
91
4.4.1 存储性能计数器
92
4.4.2 磁盘驱动器性能
93
4.4.3 顺序磁盘访问
96
4.4.4 服务器队列
97
4.4.5 文件布局
97
4.4.6 分区对齐
99
4.4.7 NTFS分配单元大小
99
4.4.8 闪存
100
4.4.9 存储性能测试
101
4.5 本章小结
105
第5章 查询处理和执行
107
5.1 简介
107
5.2 查询处理
108
5.2.1 分析
108
5.2.2 Algebrize
108
5.3 查询优化
109
5.3.1 并行计划
110
5.3.2 Algebrizer树
111
5.3.3 sql_handle和plan_handle
111
5.3.4 理解统计信息
111
5.3.5 计划缓存和重编译
113
5.3.6 影响优化
119
5.4 查询计划
125
5.4.1 查询计划操作符
128
5.4.2 读取查询计划
131
5.5 执行查询
135
5.6 本章小结
143
第6章 锁和并发
145
6.1 简介
145
6.2 事务
146
6.2.1 A是原子性
146
6.2.2 C是一致性
147
6.2.3 I是隔离性
147
6.2.4 D是持久性
147
6.3 数据库事务
147
6.3.1 原子性
147
6.3.2 一致性
147
6.3.3 隔离性
148
6.3.4 持久性
148
6.4 并发的危险
149
6.4.1 丢失更新
149
6.4.2 脏读
151
6.4.3 不可重复读
152
6.4.4 幻影读
154
6.4.5 重复读
157
6.4.6 Halloween效应
158
6.5 锁
159
6.5.1 监视锁
159
6.5.2 锁资源
161
6.5.3 锁模式
163
6.5.4 兼容性表
169
6.6 锁升级
170
6.7 死锁
171
6.8 隔离级别
171
6.8.1 可序列化
172
6.8.2 可重复读
173
6.8.3 已提交读
173
6.8.4 未提交读和NOLOCK
174
6.8.5 快照
174
6.8.6 已提交读快照
174
6.9 本章小结
175
第7章 闩锁和自旋锁
177
7.1 简介
177
7.2 症状
178
7.2.1 识别症状
178
7.2.2 检测闩锁争用
179
7.2.3 检测自旋锁争用
180
7.2.4 争用指示器
181
7.3 易受影响的系统
182
7.4 了解闩锁和自旋锁
182
7.4.1 定义
182
7.4.2 闩锁示例
183
7.5 闩锁类型
190
7.6 闩锁模式
190
7.6.1 NL
191
7.6.2 KP
191
7.6.3 SH
191
7.6.4 UP
191
7.6.5 EX
191
7.6.6 DT
191
7.6.7 闩锁兼容性
192
7.6.8 授权顺序
192
7.6.9 闩锁等待
193
7.7 超闩锁和子闩锁
194
7.8 监控闩锁和自旋锁
195
7.8.1 动态管理视图
195
7.8.2 性能监视器
196
7.8.3 扩展事件
198
7.9 闩锁争用示例
199
7.9.1 当聚集索引键是ID字段时的插入操作
199
7.9.2 队列
200
7.9.3 tempdb中的更新闩锁
203
7.9.4 名称解析中的自旋锁争用
204
7.10 本章小结
205
第8章 了解tempdb数据库
207
8.1 简介
207
8.2 概述和使用
208
8.2.1 用户临时对象
208
8.2.2 内部临时对象
213
8.2.3 版本存储区
213
8.3 常见故障排除
217
8.3.1 闩锁争用
217
8.3.2 监视tempdb的I/O性能
226
8.3.3 空间问题故障排除
228
8.4 配置最佳实践
229
8.4.1 tempdb的文件布局
229
8.4.2 tempdb的初始大小和自动增长
231
8.4.3 配置多个tempdb数据文件
234
8.5 本章小结
234
第Ⅱ部分 故障排除工具和实战经验
第9章 故障排除方法论和实践
239
9.1 简介
239
9.2 处理问题
240
9.2.1 成功排除故障的十个步骤
240
9.2.2 行为和态度
242
9.2.3 成功标准
242
9.2.4 与利益相关者打交道
243
9.2.5 服务水平协议
244
9.2.6 聘请外界帮助
244
9.3 定义问题
245
9.3.1 识别问题的指导方针
245
9.3.2 隔离问题
246
9.3.3 性能瓶颈
247
9.4 数据收集
249
9.4.1 关注数据收集
250
9.4.2 了解数据收集过程
250
9.4.3 工具和实用工具
251
9.5 数据分析
252
9.6 验证和实施解决方案
253
9.6.1 验证变更
253
9.6.2 孤立地测试变更
254
9.6.3 实施解决方案
254
9.7 本章小结
254
第10章 通过PerfMon和PAL工具查看服务器性能
255
10.1 简介
255
10.2 性能监视器概述
256
10.2.1 可靠性和性能监视器
257
10.2.2 SQL Server 2012在PerfMon中新添的计数器
259
10.2.3 PerfMon入门
262
10.3 性能监视器使用进阶
271
10.3.1 瓶颈和SQL Server
272
10.3.2 规范性指南
273
10.3.3 等待统计信息分析
278
10.3.4 获得性能基准
278
10.4 日志性能分析
278
10.5 其他PerfMon日志分析工具
282
10.5.1 通过SQL Server分析PerfMon日志
282
10.5.2 结合PerfMon日志和
SQL Profiler跟踪
282
10.5.3 使用Relog
283
10.5.4 使用LogMan
284
10.5.5 使用LogParser
285
10.6 本章小结
285
第11章 通过SQLdiag整合数据收集
287
11.1 数据收集的困境
287
11.2 数据收集的方法
288
11.3 熟悉SQLdiag
289
11.3.1 在快照模式下使用SQLdiag
290
11.3.2 作为一个命令行工具使用SQLdiag
291
11.3.3 作为一个服务使用SQLdiag
294
11.4 使用SQLdiag配置管理器
297
11.4.1 用Diag管理器配置SQLdiag数据收集
298
11.4.2 为SQLdiag配置添加跟踪过滤器
301
11.5 使用最佳实践
310
11.5.1 更好地收集长期数据
310
11.5.2 过滤噪音
311
11.5.3 用SQLdiag进行警报驱动的数据收集
314
11.6 本章小结
314
第12章 通过SQL Nexus整合一切
315
12.1 介绍SQL Nexus
315
12.2 熟悉SQL Nexus
316
12.2.1 先决条件
316
12.2.2 将数据加载到Nexus数据库中
318
12.2.3 分析聚合数据
321
12.3 自定义SQL Nexus
329
12.3.1 使用ReadTrace.exe
330
12.3.2 为SQL Nexus建立自定义报表
331
12.3.3 使用命令提示符运行SQL Nexus
331
12.3.4 在SQL Nexus数据库中创建自己的表格
331
12.3.5 编写自己的查询
333
12.3.6 OSTRESS可执行文件
334
12.4 解决常见问题
335
12.4.1 问题1
335
12.4.2 问题2
335
12.4.3 问题3
336
12.4.4 问题4
336
12.5 本章小结
337
第13章 使用扩展事件诊断SQL Server 2012
339
13.1 介绍扩展事件
339
13.2 熟悉扩展事件
340
13.3 使用扩展事件的原因
340
13.3.1 SQL Server路线图
341
13.3.2 图形工具
341
13.3.3 低影响
341
13.3.4 使用扩展事件的时机
342
13.4 扩展事件的含义
342
13.4.1 扩展事件名称的来源
343
13.4.2 扩展事件术语
343
13.5 在SQL Server 2012中创建扩展事件
352
13.5.1 介绍新会话窗体
352
13.5.2 监控服务器登录
356
13.5.3 用扩展事件监控页拆分
357
13.5.4 计算每个对象获得锁的次数
358
13.5.5 用T-SQL创建会话
360
13.6 查看由扩展事件捕获的数据
360
13.7 本章小结
366
第14章 使用PowerShell增强故障排除工具集
367
14.1 介绍PowerShell
367
14.2 熟悉PowerShell
368
14.2.1 PowerShell环境
369
14.2.2 基础知识—— cmdlet、变量、高级函数和模块
371
14.2.3 远程工作
377
14.2.4 SQL Server 2012中的新功能
377
14.3 使用PowerShell来调查服务器问题
380
14.3.1 查询磁盘空间利用率
380
14.3.2 查询当前服务器活动
381
14.3.3 查询警告或者错误信息
383
14.3.4 查询服务器性能
383
14.4 主动使用PowerShell调试SQL Server性能
384
14.4.1 索引维护
384
14.4.2 管理备份的磁盘空间利用率
385
14.4.3 使用SMO提取DLL
385
14.4.4 计划脚本执行
391
14.5 本章小结
391
第15章 提供SQL Server健康检查
393
15.1 SQL Server健康检查的重要性
393
15.2 运行DMV和DMF查询
394
15.3 SQL Server Build
396
15.4 数据库级别的查询
414
15.5 本章小结
430
第16章 提供可管理性和性能
431
16.1 用SQL Server可管理性功能提高效率
431
16.2 SQL Server 2012中的可管理性增强功能
432
16.3 基于策略的管理
432
16.4 其他管理SQL Server的微软工具
446
16.4.1 系统中心顾问
446
16.4.2 系统中心操作管理器
448
16.5 本章小结
451
第17章 在虚拟环境中运行
SQL Server
453
17.1 向服务器虚拟化转变
453
17.2 虚拟化概述
454
17.2.1 虚拟化的历史
455
17.2.2 虚拟化的广度
455
17.2.3 平台虚拟化
456
17.2.4 云计算
457
17.3 为何要虚拟化服务器
457
17.3.1 商业利益
457
17.3.2 技术利益
458
17.3.3 封装
459
17.3.4 SQL Server 2012和虚拟化
459
17.3.5 虚拟化的局限性
460
17.4 常见的虚拟化产品
461
17.4.1 VMware
461
17.4.2 微软Hyper-V
462
17.4.3 Xen
463
17.4.4 对虚拟化的硬件支持
463
17.5 虚拟化概念
463
17.5.1 主机服务器
464
17.5.2 管理程序
464
17.5.3 虚拟服务器(或Guest服务器或者虚拟机)
465
17.6 虚拟化的扩展功能
466
17.6.1 快照
466
17.6.2 高可用性特性
467
17.6.3 在线迁移
467
17.6.4 高可用虚拟服务器
469
17.6.5 主机和Guest群集
470
17.6.6 使用虚拟化的高可用性特性部署SQL Server
470
17.7 管理争用
471
17.7.1 良性争用
471
17.7.2 恶性争用
471
17.7.3 按需分配内存
472
17.7.4 加权
473
17.8 确定虚拟化的候选者
474
17.8.1 指导原则
474
17.8.2 服务器的工作负荷
474
17.8.3 收集规模数据
475
17.8.4 规模工具
476
17.8.5 与性能无关的需求
476
17.9 为成功的虚拟数据库服务器设计架构
477
17.9.1 为虚拟数据库服务器与物理数据库服务器设计架构
477
17.9.2 虚拟数据库服务器设计
478
17.10 监视虚拟数据库服务器
485
17.11 本章小结
490

作者简介

《SQL Server 2012深入解析与性能优化(第3版)》呈现大量专家建议和实例,指导您在透彻理解SQL Server和Windows内部原理的基础上排除SQL Server 2012故障。通过学习本书,您将能熟练使用具体的故障排除工具,并正确解释工具的输出结果,从而迅速地查找和排除SQL Server所在服务器的各种性能问题。
主要内容
完整介绍查询的生命周期,呈现实际环境中的SQL Server架构
介绍服务器硬件和存储系统,分析SQL Server如何使用内存以及正确的内存配置方式
探讨查询的处理和执行,讲述锁和tempdb数据库的工作原理
分析如何使用故障排除工具针对系统范围的性能问题收集数据、展开分析并找到根源
详述如何使用PowerShell和扩展事件来增强故障排除工具集,以及如何在虚拟环境中管理SQL Server


 SQL Server 数据库经典译丛下载



发布书评

 
 


 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024