数据库优化不能不知道的工具:Database Engine Tuning Advisor【原创】

       虽然每天都在写程序,做优化,但实在是太忙了,没有多少时间将经验和教训写下来,也不擅长写教程。但是,让我兴奋的Database Engine Tuning Advisor(后面简称 DTA),我不能不向大家推荐。做网站或业务系统的时候,可能会遇到类似下面的问题:

1)数据库服务器cpu经常涨到80%以上,甚至90%以上;

2)数据库做了索引,但是不能保证必要的索引都做了,更不能保证索引全局最优(涉及多个表、多个存储过程);

3)对索引有一定了解,但不精通,不知道如何深入优化。

 

     如果遇到类似问题,请继续往下看。

     数据库性能问题,大多时候,是索引问题!索引有多重要,这里不再深入讨论和分析,下面提供一个解决方案给大家参考。

     解决方案及步骤:

     1)运行SQL Server Profiler,选择“Tuning” 跟踪模板,并将结果保存到文件(运行10分钟左右即可,时间太长,日志太大,后面分析时间会很长);

     2)运行DTA,将刚才保存的跟踪文件作为“工作负荷”文件,设置参数“用于工作负荷分析的数据库”和“选择要优化的数据库和表”,其它参数可默认,点“开始分析”即可;

     3)分析结束(时间与数据库大小和跟踪日志大小有关,几分钟到几个小时不等),分析报告中会提供优化的建议和执行优化的SQL代码,根据自身需求,执行相关SQL优化代码即可。

 

写得比较简略,希望对你有帮助,祝你好运!

应用实例:

雅皮士网站(http://www.yupsky.com/)由于业务、数据量和访问量不断增加,数据库服务器cpu占有率不断上升,最近一度超过90%,使用Database Engine Tuning Advisor 和 SQL Server Profiler进行优化后,cpu回落到10%左右,性能得到了极大的提高。

 

 

posted on 2008-12-15 11:59  Jwin  阅读(1091)  评论(0编辑  收藏  举报