当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server数据库技术(53)

MSSQL
优化SQL Server索引的小技巧
SQL Server的空值处理策略
Windows上的MySQL UDF开发
MS SQLSERVER中如何快速获取表的记录总数
MS SQLSERVER 中如何得到表的创建语句
使用索引调节向导调整应用程序的性能
使用查询分析器调整SQL服务器脚本
SQL Server到Oracle连接服务器的实现
数据库查询结果的动态排序(6)
数据库查询结果的动态排序(7)
保持Oracle数据库优良性能的若干诀窍
数据库管理员制胜之宝
在Linux下访问MS SQL Server数据库
关于如何在查询结果中添加自动编号
如何提取除最新十条记录之外的所有记录?
一个有关DISTINCT的问题解答
关于MSSQL Server中DATETIME类型数据的处理
TOP N 和SET ROWCOUNT N 哪个更快?
金额阿拉伯数字转换为中文的存储过程
谈谈数据从sql server数据库导入mysql数据库的体验

MSSQL 中的 SQL Server数据库技术(53)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 77 ::
收藏到网摘: n/a

8.5.1 索引与系统性能
    索引可以加快数据检索的速度,但它会使数据的插入、删除和更新变慢。尤其是簇索引,数据是按照逻辑顺序存放在一定的物理位置,当变更数据时,根据新的数据顺序,需要将许多数据进行物理位置的移动,这将增加系统的负担。对非簇索引,数据更新时也需要更新索引页,这也需要占用系统时间。因此在一个表中使用太多的索引,会影响数据库的性能。对于一个经常会改变的表,应该尽量限制表只使用一个簇索引和不超过3~4 个非簇索引。对事务处理特别繁重的表,其索引应尽量不超过3 个。

8.5.2 索引调整向导(Index Tuning Wizard)
索引调整向导可以帮助选择并创建一个最优化的索引集合,以提高数据库的性能。

要使用索引调整向导需要一个工作负荷记录(Workload)。 工作负荷记录由SQL 脚本或SQL Server Profiler 创建的存储在文件或表中的跟踪组成。如果没有现存的针对要进行索引调整的数据库或表的工作负荷记录,可以通过SQL Server Profiler 来创建一个(其具体方法请参见第19 章中SQL Server Profiler 的用法)。可以用Sample 1 – TSQL 跟踪定义来创建或新建一个跟踪。索引调整向导可以使用查询优化器根据工作负荷记录分析索引的性能,并提出相应的调整建议。可以立即让系统根据建议修改索引,也可以将任务列入计划以后再创建。

8.5.3 使用索引调整向导:
使用索引调整向导的步骤如下
(1) 从“Tools” 菜单中选择“Wizards” 选项,出现如图8-15 所示的选择向导界面。
(2) 从树型目录中选择“Management” 下的“Index Tuning Wizard” 选项,出现如图8-16 所示的索引调整向导界面。
(3) 单击“下一步”按钮,出现如图8-17 所示的选择服务器和数据库对话框。在此选择要进行索引调整的数据库。各选项含义如下:

  Keep all existing indexes
保留已经存在的索引。如果不选择此选项,在进行索引优化时可能将删除一些索引。
  Perform thorough analysis
对工作负荷记录进行彻底地分析。


(4) 单击“下一步”按钮,出现如图8-18 所示的指定工作负荷记录文件对话框。在此选择要进行索引调整的数据库的工作负荷记录文件。单击“Advanced Options…”按钮,出现如图8-19 所示的修改缺省调整参数对话框,可以查看或修改调整索引的参数设置;索引中列的最大数目,提供给推荐索引的最大空间、最大的调整查询测试次数。

(5) 单击“下一步”按钮,出现如图8-20 所示的指定进行索引调整的表对话框。在此选择要进行索引调整的数据库中的一个或多个表

(6) 单击“下一步”按钮,出现如图8-21 所示的推荐索引调整对话框,在此选择系统推荐的要进行索引调整的索引,将其列入调整计划。
(7) 单击“下一步”按钮,出现如图8-22 所示的结束索引调整对话框。至此,索引调整向导执行完毕。单击“完成”按钮结束向导。