SQL server 系统优化--通过执行计划优化索引(1) (转)
2008-09-12 14:57
316 查看
SQL server 系统优化--通过执行计划优化索引(1)
前几天,远离上海,到了温州,在客户的这边处理系统慢,该系统每天正常down机7次左右,在线人员一多,系统运行缓慢,严重影响业务操作,到了无法忍耐的地步,这几天一直在这边处理优化中的问题和升级系统。将这些优化办法和思路记录下来,给大家在以后优化系统中提供思考和建议。这几天都在通过执行计划来优化索引:
1,首先通过DMVs性能视图来查看那些性能问题是可以通过索引来优化的。先在生产数据库里执行下列查询:
sql server性能分析--执行sql次数和逻辑次数
查看部分得到结果(注意平均时间):
![](http://images.cnblogs.com/cnblogs_com/zping/145752/o_stts.jpg)
这里我们看到语句的执行时间和执行语句,我们拷贝一个运行比较慢的sql出来。预估sql执行计划,查看执行计划:
![](http://images.cnblogs.com/cnblogs_com/zping/145752/o_index12.jpg)
分析:这里我们看到整个复杂的执行计划中,通过RID查找数据的开销占到了80%的时间。我们这里看看他通过RID是查询什么数据。
![](http://images.cnblogs.com/cnblogs_com/zping/145752/o_index13.jpg)
原来是通过RID只查询workflowid数据。上面是通过索引查找(index seek)来查询数据,这时最好是做到索引覆盖,将workflowid包含到上面的索引,这样一来该sql语句的执行速度大大提高。
总结:
这几天都是通过类似的方法来评估系统的使用,再优化索引提高速度,到现在为止系统性能比先前要提高很多。继续努力。。。。
http://www.zping.com/ 另外http://technet.microsoft.com/zh-cn/magazine/cc137757.aspx讲得比较详细。
相关文章推荐
- SQL server 系统优化--通过执行计划优化索引(1)
- SQL server 系统优化--通过执行计划优化索引(2)
- SQL server 系统优化--通过执行计划优化索引(3)
- 优化 SQL Server 查询性能----分析执行计划,索引与索引视图,如何识别要优化的查询
- 优化 SQL Server 查询性能----分析执行计划,索引与索引视图,如何识别要优化的查询
- SQL Server 强大的分区技术优化执行计划索引实例详解(使用语句检测和优化数据库 (MSSQL个人笔记之数据库优化之路 四)
- sql server 数据库优化--显示执行计划 你真的知道索引使用???
- 通过分析SQL语句的执行计划优化SQL(总结)
- mysql查缺补漏(二)mysql5.6性能优化(explain执行计划术语,索引,优化查询)
- SQL Server现场优化纪实(一):通过重建索引提高性能
- SQL Server 查询优化(测试02)参数嗅探-执行计划选择
- 通过分析SQL语句的执行计划优化SQL (五)
- 第六章——根据执行计划优化性能(2)——查找表/索引扫描
- 通过分析SQL语句的执行计划优化SQL(三)
- SQL Server索引的执行计划
- 通过分析SQL语句的执行计划优化SQL
- SQL Server-聚焦使用索引和查询执行计划
- 通过分析SQL语句的执行计划优化SQL(总结)
- 通过分析SQL语句的执行计划优化SQL(总结)
- 初探Sql Server 执行计划及Sql查询优化