Sql server 2008查询性能优化学习笔记一

来源:互联网 发布:站长工具seo是查啥的 编辑:程序博客网 时间:2024/06/06 02:04

一、在调整过程中,必须检查各种可能影响基于Sqlserver的应用程序性能的硬件和软件因素。你应该在性能分析中问自己以下的问题:

1.相同服务器上有没有运行其他的资源密集型应用?

2.硬件子系统是否能承受最大的工作负荷?

3.Sql server 是否被正确配置?

4.Sql server 和数据库应用之间的数据库连接是否有效?

5.数据库设置是否支持最快的数据检索

6.由sql查询组成的用户工作负载是否优化以减少Sqlserver上的负载?

7.在各种等待状态的测量中反映出哪个进程导致系统的减慢?

8.工作负载是否支持最大的并发性?

例:不建议在服务器上连续运行Windows任务管理器。任务管理器也是一个应用程序--taskmgr.exe,它运行在比sqlserver进程更高的优先级。优先级是给予一个资源的权重,使处理器在运行时给它更多的的优先权。

二、Sqlserver 性能杀手

       在已经优化了硬件、操作系统和Sqlserver设置的情况下,Sql Server中的性能杀手按照粗略的顺序排列如下:

1.低质量的索引

2.不精确的统计

3.过多的用阻塞和死锁

4.不基于数据集的操作,通常是T-sql游标

5.低质量的查询设计

6.低质量的数据库设计

7.过多的碎片

8.不可重用的执行计划

9.低质量的执行计划,通常是因为参数嗅探(parameter sniffing)所导致的

10.执行计划频繁重编译

11.游标的错误使用

12.数据库日志的错误配置

13.过多使用或者错误配置tempdb

0 0