搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
SQL Server 2005性能监测与优化
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115196729
  • 作      者:
    袁鹏飞,钟发英,马娜编著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2009
收藏
编辑推荐
  《SQL Server2005性能监测与优化》把关注的重心放在数据库性能监测和优化方面,这是开发数据库应用系统的核心所在,也是很多数据库程序设计人员最为关注的问题。它需要丰富的经验和准确的判断力,不可能照猫画虎。《SQL Server2005性能监测与优化》涵盖了SQL Server性能监测和分析的各个领域,结合了作者多年的实践经验,能够使读者循序渐进地提升自己的业务水平,从数据库程序开发人员转变为数据库优化大师,从丑小鸭成长为白天鹅。 为了避免重理论而轻实践的问题,书中以信用卡消费管理系统为案例,利用各种方式对该系统进行优化,使读者在了解理论的同时,直接从实践中验证效果。图书的最后还介绍了两个数据库性能分析和监测工具,可以帮助读者解决实际工作中遇到的性能问题。
  饭菜几乎人人都会做,但厨艺好到可以称为厨师的比例极少,如果你参加过IT公司的招聘工作,就会发现自称懂数据库的大有人在,而真正掌握、精通数据库的人却比例极少。那么怎样才能精通数据库呢?实践是其一,学习提高是其二。好比一个主妇,做数十年饭,实践一辈子,未必是个好厨娘。做数据库应用的工程师也一样,不仅要实践,还要不断学习,抓住重点,总结经验,业务水平才会有质的提高。
  《SQL Server2005性能监测与优化》在编写过程中兼顾SQL Server 2000和SQL Server 2005的工作原理和使用方法,大多数实例和优化方法都适用于SQL Server 2000数据库。
展开
内容介绍
  《SQL Server2005性能监测与优化》从数据库的基本工作原理入手,系统介绍了SQL Server数据库体系结构、索引优化、SQL语句优化、性能优化工具、系统存储过程、系统表、系统视图、分区技术、死锁处理等,最后帮助读者设计实现两个数据库性能分析和监测工具。《SQL Server2005性能监测与优化》内容丰富、注重实用,理论讲解与案例应用相结合,特别适合SQL Server数据库管理员和应用程序开发人员,以及对相关技术感兴趣的读者阅读。
  SQL Server是Microsoft公司在数据库领域中非常重要的产品,是关系型数据库的代表产品之一。很多大型应用系统都采用SQL Server作为后台数据库。怎样才能设计出性能高效的SQL Server数据库应用程序是很多软件企业非常关注的问题。《SQL Server2005性能监测与优化》结合实例介绍如何对SQL Server数据库进行设计和性能优化,解决目前数据库应用系统中存在的性能问题。
展开
精彩书评
  作为SQL Server的研发团队的成员,最后想和读者简单分享最新发布的SQL Server 2008在性能监测及优化方面的进一步提升。新功能包括数据压缩,备份压缩,日志压缩,资源管理器,T-SQL计划引导支持(Plan guide support),等等。建议有兴趣的读者进一步关注。
  ——微软中国研发集团SQL Server研发中心 研发部门经理 赵晓燕
展开
精彩书摘
  第1章 数据库设计与优化原理——从头说起
  要对数据库应用系统进行优化,首先应该了解数据库的基本设计原理,就像医生必须了解人体的构造和工作机理一样。
  1.1 数据库系统理论基础
  本书将简单介绍数据库系统理论基础,包括数据库系统的发展历程和一些基本的概念。
  1.1.1 数据库系统的发展历程
  数据存储是计算机的基本功能之一。在计算机刚刚问世的时候,人们将程序存储在纸带上,使用卡片或纸带阅读器来读取其中的数据。此时的数据存储处于人工管理阶段,计算机主要用于科学计算,需要存储的数据量较小;没有专门的数据库管理软件,完全靠用户手动操作;数据无法实现共享,只能针对特定的程序使用。
  随着计算机技术的不断发展,在20世纪60年代,计算机的存储能力得到了进一步的提升,计算机除了用于科学计算外,还用于管理。同时,产生了磁带、磁鼓等外部存储设备,有了专门管理数据的文件系统。此时的数据存储处于文件系统阶段,数据以文件的形式被保存在外部存储介质上,数据可以在不同的程序中被应用,具有一定程度的独立性。
  随着计算机的不断普及,数据存储量越来越大,数据之间的关系也越来越复杂,数据库系统的概念已经产生。最初的数据库系统包括两种主要的数据模型,即网状模型(如Oralce的cODAsYL)和层次模型(如IBM的IMS)。20世纪70年代至今,关系型数据库和数据库管理系统(DBMS)产生并得到不断发展。l970年,IBM的研究员E.F.Codd博士发表了《大型共享数据银行的关系模型》一文,提出了关系模型的概念。后来他又发表多篇文章,奠定了关系数据库的基础。关系数据模型是以集合论中的关系概念为基础发展起来的。关系模型中,无论是实体还是实体间的联系均由单一的结构类型——关系来表示。在实际的关系数据库中,关系就是表,一个关系数据库由若干个表组成。
展开
目录
第1章 数据库设计与优化原理——从头说起
要对数据库应用系统进行优化,首先应该了解数据库的基本设计原理,就好像医生必须了解人体的构造和工作机理一样。
1.1 数据库系统理论基础
1.1.1 数据库系统的发展历程
1.1.2 数据库管理系统(DBMS)
1.2 数据模型
1.2.1 数据模型分类
1.2.2 实体-联系(E-R)模型
1.3 与数据库沟通的语言——SQL
1.3.1 数据定义语言
1.3.2 数据操作语言
1.3.3 使用SELECT语句
1.3.4 优化SELECT语句的原则

第2章 SQL Server数据库体系结构
提到性能优化,很多人第一个反应就是对硬件升级。那么怎么做才能合理利用服务器的硬件呢?
2.1 内存管理与优化
2.1.1 Windows内存管理
2.1.2 SQL Server 2005对大容量内存的支持
2.1.3 手动配置内存选项
2.1.4 监测SQL Server内存使用情况
2.1.5 优化Windows内存性能
2.2 存储引擎与优化
2.2.1 数据库文件和文件组
2.2.2 页和区
2.2.3 收缩数据或事务日志空间
2.2.4 监测SQL Server磁盘活动情况
2.2.5 优化SQL Server服务器的磁盘性能
2.3 处理器管理与优化
2.3.1 查看CPU活动情况
2.3.2 监测SQL Server的CPU活动情况
2.3.3 线程管理

第3章 信用卡消费演示系统(Visual C#)
要对SQL Server数据库进行性能优化,可不能纸上谈兵。拿个超大的数据库应用系统来讲解,又很难讲清楚应用系统本身的逻辑关系。
本章使用Visual C#设计一个简易的信用卡消费演示系统,模拟不同用户同时使用信用卡进行刷卡消费的情形,产生大量的刷卡消费数据。本书后面也以此数据库作为性能优化的对象。
3.1 系统分析与设计
3.1.1 实例功能描述
3.1.2 数据库表设计
3.2 设计工程框架
3.2.1 创建工程
3.2.2 为表添加类
3.2.3 设计主界面
3.3 实现模拟刷卡消费
3.3.1 设计Consume类
3.3.2 在主窗体中启动刷卡消费线程
3.4 设计个人消费记录统计报表
3.4.1 在ListView控件中显示统计数据
3.4.2 优化在ListView控件中显示数据的方法

第4章 索引——最直接的切入点
通过硬件升级进行优化当然效果比较直观,但银子也不是从天上掉下来的。从数据库本身着手进行优化,最直接的切入点就是索引。
4.1 索引就好像是书的目录
4.1.1 索引的定义
4.1.2 查看索引信息
4.1.3 创建索引
4.1.4 修改索引
4.1.5 删除索引
4.1.6 使用SQL语句获取索引信息
4.2 统计信息是对索引的补充
4.2.1 查看统计信息
4.2.2 创建统计信息
4.2.3 修改统计信息
4.2.4 删除统计信息
4.3 好的索引设计等于成功的一半
4.3.1 使用索引优化数据库查询效率
4.3.2 无法使用索引的SELECT语句
4.3.3 重新组织和重新生成索引

第5章 优化SQL语句的效率
SQL语句的基本语法并不复杂,常用语句的数量也并不多,学会容易,但学精却并不简单。
5.1 优化SELECT语句
5.1.1 连接查询的优化
5.1.2 控制查询的行和列的数量
5.1.3 慎用DISTINCT关键字
5.1.4 慎用UNION关键字
5.1.5 判断表中是否存在记录
5.2 对大批量插入、修改和删除数据操作的优化
5.2.1 使用SQL脚本模拟实时批量插入数据
5.2.2 使用INSERT INTO...SELECT语句优化批量插入操作
5.2.3 优化修改和删除语句
5.3 使用存储过程优化执行速度
5.3.1 存储过程的基本概念
5.3.2 创建存储过程
5.3.3 执行存储过程
5.3.4 修改和重命名存储过程
5.3.5 删除存储过程
5.3.6 在存储过程中使用游标
5.3.7 在存储过程中使用临时表
5.4 使用特殊的存储过程——触发器
5.4.1 触发器的基本概念
5.4.2 inserted和deleted表
5.4.3 创建触发器
5.4.4 修改和重命名触发器
5.4.5 删除触发器
5.5 视图也需要优化
5.5.1 基本概念
5.5.2 索引视图

第6章 常用性能监测和优化工具
“工欲善其事,必先利其器”,子的话还是很有道理的。要分析和优化SQL Server数据库的性能,同样必须借助一些工具。
6.1 SQL Server Profiler——私家侦探
6.1.1 SQL Server Profiler的基本使用方法
6.1.2 筛选跟踪数据
6.1.3 重播跟踪
6.1.4 实用SQL Server Profiler定位和分析问题
6.2 数据库引擎优化顾问——你身边的专家
6.2.1 分析数据库性能
6.2.2 优化选项
6.2.3 应用建议
6.2.4 使用dta实用工具
6.3 RML分析工具——秘密武器
6.3.1 下载和安装
6.3.2 ReadTrace实用工具
6.3.3 OSTRESS实用工具

第7章 使用语句监测和优化数据库——从高手进化到专家
如果能够灵活掌握前面介绍的内容,在一般用户眼里,你已经算得上是高手了。但如果想成为专家,还需要了解更多关于SQL Server数据库的内部机制。事实上,SQL Server提供了大量的系统存储过程、系统函数、系统视图和语句,但很多数据是在企业管理器和其他工具中无法看到的。能够查看到一般人无法获知的数据,再对这些数据进行分析,得出你的结论,那么你已经开始向一个专家转变了。
7.1 使用系统存储过程管理SQL Server Profiler
7.1.1 创建跟踪
7.1.2 设置事件和事件列
7.1.3 筛选跟踪数据
7.1.4 设置跟踪的状态
7.2 系统统计函数
7.2.1 获取尝试登录的次数
7.2.2 获取网络数据包统计信息
7.2.3 获取CPU的工作情况
7.2.4 获取数据库文件的I/O统计信息
7.2.5 获取I/O工作情况
7.2.6 获取磁盘读写情况
7.3 SQL Server系统视图
7.3.1 信息架构视图
7.3.2 数据库和文件目录视图
7.3.3 对象目录视图
7.3.4 兼容性视图
7.4 DBCC语句
7.4.1 缓冲区管理
7.4.2 监视内存状态
7.4.3 DBCC维护语句
7.4.4 DBCC ERRORLOG语句

第8章 大型数据库的分区技术
对于超大型数据库而言,即使使用前面介绍的方法再怎么优化,有些情况下也很难得到理想的效果。此时就有必要对数据库进行分区,把一个表或视图中的数据按一定的规则划分到不同的分区中,从而缩小查询的范围。就像学校里把一个年级划分为不同的班一样,找一年十二班的小明比找一年级的小明要容易很多。
8.1 分区的类型
8.1.1 硬件分区
8.1.2 水平分区
8.1.3 垂直分区
8.2 分区表和分区索引
8.2.1 确定分区依据列和分区数
8.2.2 创建文件组
8.2.3 分区函数
8.2.4 创建分区方案
8.2.5 创建分区表
8.2.6 创建分区索引
8.2.7 查看分区表明细信息
8.2.8 拆分和合并分区
8.2.9 分区中的数据移动
8.3 分区视图
8.3.1 设计分区视图
8.3.2 创建分区视图
8.3.3 在分区视图中修改数据

第9章 事务和锁
死锁是困扰数据库设计和开发人员的一个技术难题,当多个用户同时访问指定的数据库资源时,就有可能造成死锁。就像在十字路口多车抢行会造成堵塞一样。一旦死锁,大家都得不到所需要的数据库资源,直到一方放弃,这将严重影响数据库系统的性能。
9.1 事务
9.1.1 事务的特性
9.1.2 事务的分类
9.1.3 事务相关语句
9.1.4 嵌套事务
9.1.5 事务中不允许使用的SQL语句
9.2 了解锁定机制,防患于未然
9.2.1 锁定机制
9.2.2 锁的兼容性
9.2.3 锁的粒度和层次结构
9.2.4 显示锁活动情况
9.2.5 设置事务隔离级别选项
9.3 死锁其实并不可怕
9.3.1 产生死锁的原因
9.3.2 设置锁超时时间
9.3.3 尽量减少死锁

第10章 开发MSSQLDBAnalyzer性能分析工具
前面讲了那么多理论上的东西,现在介绍一个数据库性能分析的实例吧。这个实例可以对选择的SQL Server数据库中每个表和视图进行性能分析,找到可能影响性能的数据库对象。阅读本章需要具有一定的Visual C#开发基础。
10.1 实例的基本功能和总体设计
10.1.1 实例的基本功能
10.1.2 工程结构设计
10.2 DBBase工程设计与实现
10.2.1 工程结构
10.2.2 基础服务类
10.2.3 数据库基本操作类MssqlBase
10.2.4 数据库信息类DBInfo
10.2.5 数据库对象信息类DBObjInfo
10.2.6 数据库表信息类DBTable
10.2.7 数据库视图信息类DBView
10.2.8 字段信息类DBFieldBase和DBFieldInfo
10.3 ListViewSortManager工程设计与实现
10.3.1 工程结构
10.3.2 基本函数和数据结构
10.3.3 在ListView控件中画图的类ListViewItemImageManager
10.3.4 实现ListView控件自动排序的类ListViewSortManager
10.4 MSSQLDBAnalyzer工程设计与实现
10.4.1 登录对话框
10.4.2 设计主窗体
10.4.3 配置选项管理
10.4.4 表和视图性能分析
10.4.5 对ListView控件中的数据进行排序
10.4.6 查看表信息
10.4.7 查看视图信息

第11章 开发MssqlMonitor服务器性能监测工具
在分析数据库系统性能时,需要时刻关注SQL Server数据库的工作情况。这也是数据库管理员比较关注的问题。本章介绍一个数据库服务器性能监测工具,这个工具可以扫描指定网段,发现其中的SQL Server数据库服务器,还可以自动监测SQL Server服务器的CPU、内存、在线情况、端口工作情况等,当出现异常时及时通知管理员。
11.1 实例的基本功能和总体设计
11.1.1 实例的基本功能
11.1.2 数据库结构设计
11.1.3 工程结构设计
11.2 NetworkBase工程设计与实现
11.2.1 工程结构
11.2.2 设备信息类Device
11.2.3 获取网络信息的服务类NetService
11.2.4 子网信息类Subnet
11.2.5 WMI管理类WMIConnection
11.3 MssqlMonitor工程设计与实现
11.3.1 工程结构
11.3.2 配置文件管理类ConfigureService
11.3.3 数据库基础操作类DBBase
11.3.4 数据库信息类DBInfo
11.3.5 MsSqlserver数据库表管理类
11.3.6 设计主窗体
11.3.7 添加、修改和删除SQL Server服务器
11.3.8 扫描SQL Server服务器
11.3.9 显示SQL Server数据库基本信息
11.3.10 监测SQL Server数据库的工作状态
11.4 实例的后续工作
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证