Microsoft SQL Server 2005技术内幕

Microsoft SQL Server 2005技术内幕

(美) 德兰妮 (Delaney,K.) , 著

出版社:电子工业出版社

年代:2007

定价:49.0

书籍简介:

本书详细介绍了数据引擎的基础运作,包含了数据库的设定与数据实际在硬盘的摆放、索引结构、事务与锁定等。除了解释设计理念与运作原理外,还辅之以测试验证的方式。数据库开发者和管理员可从中获得最优的方法、务实的建议和实例代码来帮助他们掌握创建和维护企业级关系数据库所需的复杂技术。该书获得资深专家关于创建和维护健壮数据库的高屋建瓴般的视野和入木三分的剖析,十分适合有一定数据库基础的读者学习。

作者介绍:

Kalen Delaney是Solid Quality Learning的创建人之一,并且从事SQL Server的工作已有19年,从1987年起开始受雇于Sybase 公司。   1992年,在从旧金山海湾搬家到美丽的太平洋西北部之后,Kalen成为一名独立的培训师和顾问。在随后的几年里,她和微软及Sybase公司一起开发课程并为他们的技术支持员工提供内部培训。   1998年,Kalen为微软的产品支持团队开设了一门内部课程,以帮助他们学习SQL Server 7的内部工作原理和新特性。她还为SQL Server 2000开展了一个类似的课程。在很多年里,Kalen把这些课程传授给位于全美和全世界的众多微软的办公室相关人员和合作伙伴。现在她为自己的顾客提供SQL Server 2005体系结构、内部实现和查询调校的课程,这些你可以在Solid Quality Learning的网页(www.SolidQualityLearning.com)上找到。   1995年,微软授予了Kalen MVP(最有价值的专家)的称号,因为她参与了在微软的新闻服务器(msnews.microsoft.com)上的SQL Server公共帮助论坛。现在,她仍然定期参与公共论坛,解答与SQL Server 内部实现和行为有关的许多问题。   在1999年初,她被邀请参加成立一个非营利性的、国际的SQL Server用户组的最初计划委员会。以那个计划委员会为基础,SQL Server专业组织(Professional Association for SQL Server,PASS)诞生了。她头两年担任“Program Development”部门的主管,并于1999年10月在芝加哥举行的开幕会议上作了演讲。从那以后,她在每届的PASS会议上都作了讲话。   在2002年,Kalen和她的5位同事创建了属于他们自己的公司,致力于提供世界上最先进的SQL Server培训。在随后的4年多的时间里,Solid Quality Learning已经发展成为一个拥有来自世界各地的40多名SQL Server专家的公司。

书籍目录:

前言 I

致谢 III

引言 VII

第1章 SQL Server 2005 的安装与升级 1

1.1 SQL Server 2005安装前提 2

SQL Server 2005 版本 3

软件要求 4

硬件要求 5

1.2 安装前决策 7

安全性和用户上下文 7

字符与排序规则 9

排序次序 11

安装SQL Server的多个实例 15

安装SQL Server命名实例 16

1.3 做好安装准备 18

SQL Server 2005升级向导 18

1.4 迁移还是升级 20

迁移 20

升级 21

升级后的操作 23

1.5 选择组件 25

SQL Server数据库服务(数据库引擎) 26

Analysis Services 27

Reporting Services 27

Notification Services 27

Integration Services 27

工作站组件、联机丛书及开发工具 27

1.6 小结 28

第2章 SQL Server 2005体系结构 29

2.1 SQL Server引擎组件 29

观测数据库引擎行为 30

协议 31

表格格式数据流(TDS)端点 32

关系引擎 33

存储引擎 35

SQLOS 39

2.2 内存 49

缓冲池和高速数据缓冲区 50

访问内存中的数据页 50

管理数据高速缓冲区中的页面 51

检查点 53

管理其他高速缓存中的内存 54

调节内存大小 56

调节缓存池大小 56

2.3 小结 63

第3章 SQL Server 2005的配置 65

3.1 使用SQL Server 配置管理器 65

配置网络协议 65

默认的网络配置 66

管理服务 67

3.2 系统配置 67

任务管理 67

资源分配 68

系统分页文件的位置 69

非必需的服务 69

网络协议 69

与SQL Server 早期版本之间的兼容性 69

跟踪标记(Trace Flags) 70

SQL Server 的配置设定 70

内存选项 72

调度选项(Scheduling Options) 74

磁盘I/O 选项 76

查询处理选项 77

默认跟踪(Default Trace) 83

3.3 小结 85

第4章 数据库和数据库文件 87

4.1 系统数据库 88

master 88

Model 89

tempdb 89

mssqlsystemresource 89

msdb 90

4.2 示例数据库 90

AdventureWorks 91

pubs 91

Northwind 91

4.3 数据库文件 92

4.4 创建数据库 94

一个创建数据库的实例 96

4.5 增长和收缩数据库 97

自动文件增长 97

手动文件增长 97

快速文件初始化 98

自动收缩 98

手动收缩 98

4.6 使用数据库文件组 101

默认文件组 101

一个创建文件组的例子 103

4.7 更改数据库 104

ALTER DATABASE示例 105

4.8 数据库的真面目 106

空间分配 106

检查数据库的一致性 109

执行校验检查 110

4.9 设置数据库选项 115

状态选项 117

游标(CURSOR)选项 122

自动(AUTO)选项 123

SQL 选项 124

数据库恢复选项 125

其他数据库选项 127

4.10 数据库快照 127

创建一个数据库快照 127

数据库快照所使用的空间 130

管理快照 131

4.11 tempdb数据库 132

tempdb中的对象 132

tempdb中的优化 134

最优方法 135

tempdb空间监视 136

4.12 数据库安全 137

数据库访问 138

管理数据库安全性 140

数据库与架构(Schema) 140

分离主体与架构 141

默认架构 141

4.13 移动或复制一个数据库 142

分离和重新附加数据库 143

备份和还原数据库 144

移动系统数据库 145

移动master数据库和Resource数据库 146

4.14 兼容性级别 147

4.15 小结 148

第5章 日志和恢复 149

5.1 事务日志简介 149

恢复的各个阶段 152

5.2 改变日志文件大小 154

虚拟日志文件 154

观察虚拟日志文件 155

多个日志文件 156

虚拟日志文件的自动截断 157

维护可恢复的日志 158

日志的自动收缩 160

日志文件的大小 161

5.3 读取日志 162

5.4 数据库的备份和还原 162

备份的类型 163

恢复模型 164

选择备份类型 167

还原数据库 168

5.5 小结 174

第6章 表 175

6.1 系统对象 176

兼容性视图 176

目录视图 178

其他元数据 180

6.2 创建表 183

命名表和列 183

保留关键字 184

分隔标识符 185

命名惯例 186

数据类型 186

关于NULL的琐事 195

6.3 用户定义数据类型 198

CLR数据类型 200

6.4 IDENTITY属性 200

6.5 内部存储 203

sys.indexes目录视图 204

数据存储元数据 205

数据页面 209

数据行的结构 215

列偏移矩阵 217

定长记录的存储 217

变长记录的存储 221

页面连锁 224

行溢出数据 224

大对象数据 228

存在在数据行中的LOB数据 230

varchar(MAX)数据的存储 233

sysvariant的存储 234

6.6 约束 237

约束名和目录信息 238

事务及多记录修改中的约束失败 241

6.7 修改表 242

更换一个数据类型 242

增加一个新列 243

添加/删除/禁用/启用一个约束 243

删除一个列 244

启用或禁用触发器 245

对表进行修改的内部处理 245

6.8 小结 248

第7章 索引的内部构造和管理 249

7.1 索引的构造 250

聚集索引 252

非聚集索引 253

7.2 创建索引 254

包含性列(Included Columns) 257

索引的放置 257

约束和索引 258

7.3 索引分页的结构 259

带有唯一标识符(Uniqueifier)的聚集索引行 262

索引行的格式 266

聚集索引的结点行 267

非聚集索引的叶级行 269

非聚集索引的结点行 274

7.4 索引的空间需求 275

B-树的大小 275

实际大小 vs. 估计大小 276

7.5 特殊索引 280

先决条件 280

SET 选项 280

可允许的函数 281

架构绑定(Schema Binding) 282

基于计算列的索引 282

使用COLUMNPROPERTY 函数 283

计算列的实施 283

持久化列(Persisted Columns) 283

索引视图 285

附加要求 285

创建索引视图 286

使用索引视图 287

7.6 表和索引分区 288

分区函数及分区方案 288

关于分区的元数据 290

分区的威力 293

7.7 数据修改的内部机理 296

插入行 296

页拆分(Splitting Pages) 296

拆分索引的根分页 297

拆分中间级索引分页 297

拆分数据分页 297

删除行 300

从堆中删除记录 301

从B-树中删除记录 303

删除索引结点级中的记录 306

回收分页 306

更新行 306

移动行 307

管理前转指针 308

覆盖更新(Updating in Place) 309

非覆盖更新(Updating Not in Place) 309

表级数据修改 vs. 索引级数据修改 311

日志记录 313

锁定 313

7.8 索引的管理 314

修改索引(ALTER INDEX) 314

碎片的种类 315

碎片的检测 316

碎片报告 319

碎片的移除 322

索引的重建 325

联机索引创建 326

7.9 索引的使用 329

查找行 329

联接 329

排序 329

分组(Grouping) 329

保持唯一性 330

7.10 小结 330

第8章 锁定和并发 331

8.1 并发控制模型 332

悲观并发控制 332

乐观并发控制 332

8.2 事务处理 332

ACID属性 333

原子性(Atomicity) 333

一致性(Consistency) 334

隔离性(Isolation) 334

持久性(Durability) 334

隔离级别(Isolation Levels) 336

未提交读(Uncommitted Read) 336

已提交读(Read Committed) 337

可重复读(Repeatable Read) 337

快照(Snapshot) 338

可串行化(Serializable) 339

8.3 锁定(Locking) 340

锁定的基本概念 340

自旋锁(Spinlocks) 341

用户数据的锁定类型 341

锁的模式 342

共享锁(shared locks) 342

排他锁(exclusive locks) 342

更新锁(update locks) 342

意向锁(intent locks) 343

特殊锁定模式 343

转换锁(conversion locks) 344

键范围锁(key-range locks) 345

锁的粒度(lock granularity) 345

键锁(key locks) 347

另外的可锁定资源 349

应用程序级锁(application lock) 350

鉴别锁定资源 352

关联实体ID(Associated Entity ID) 353

锁的持续时间 354

锁的所有权(Ownership) 354

观察锁 355

sys.dm_tran_locks 355

锁定的实例 358

8.4 锁兼容性 364

8.5 锁定的内部架构 365

锁分区(Locking Partitioning) 367

锁块 368

锁所有者块 370

syslockinfo 表 370

8.6 绑定连接(Bound Connections) 372

使用绑定连接 372

多个活动结果集(Multiple Active Result Sets) 374

8.7 行级锁定 vs. 分页级锁定 374

锁升级 375

禁用锁升级 376

死锁 377

8.8 行版本控制 381

行版本控制概述 382

行版本控制详述 382

基于快照的隔离级别 383

已提交读快照隔离 383

快照隔离 385

快照隔离的范畴 386

观察数据库的状态 387

更新冲突 388

数据定义语言(DDL)和快照隔离 390

小结:基于快照的隔离级别 393

版本存储区 395

版本存储区的管理 398

快照事务元数据 398

并发模型的选择 402

8.9 其他使用行版本控制的特性 404

触发器和行版本控制 404

MARS 和行版本控制 405

8.10 锁定控制 407

锁定提示(Lock Hints) 407

设置锁定超时 409

8.11 小结 411

索引 413

内容摘要:

《Microsoft SQl Server 2005技术内幕:存储引擎》是Inside Microsoft SQL Server 2000的作者Kalen Delaney的又一经典著作,是Inside Microsoft SQL Server 2005系列四本著作中的一本。《Microsoft SQl Server 2005技术内幕:存储引擎》对SQL Server 2005存储引擎方面的知识进行了全面而详细的阐述,包括数据库文件、日志和恢复、表、索引及其管理、锁定和并发等内容。除了解释设计理念与运作原理外,书中还辅之以大量简短而有力的实例。您将跟随一位广受欢迎的作家同时也是SQL Server资深专家一起深入探索SQL Server存储引擎的技术内幕。

编辑推荐:

《Microsoft SQl Server 2005技术内幕:存储引擎》适合于专业数据库开发者、BI开发者、DBA和以SQL Server作为后台数据库的一般应用程序开发者。《Microsoft SQl Server 2005技术内幕:存储引擎》不仅适合SQL Server 2005的初级读者,也适合SQL Server 2005的中高级读者。读者可以从中获得最优的方法、务实的建议和实例代码来帮助他们掌握创建和维护企业级关系数据库所需的复杂技术。《Microsoft SQl Server 2005技术内幕:存储引擎》是所有SQL Server 2005用户的案头必备之书。

书籍规格:

书籍详细信息
书名Microsoft SQL Server 2005技术内幕站内查询相似图书
9787121046742
如需购买下载《Microsoft SQL Server 2005技术内幕》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位电子工业出版社
版次1版印次1
定价(元)49.0语种简体中文
尺寸26装帧平装
页数印数 5000

书籍信息归属:

Microsoft SQL Server 2005技术内幕是电子工业出版社于2007.07出版的中图分类号为 TP311.138 的主题关于 关系数据库-数据库管理系统,SQL Server 2005 的书籍。