mssql 2005 CPU 占用100%问题

1.出现问题:CPU 占用率100%,平均90%以上

2.造成原因:大量的并发查询语句,筛选列没有创建索引,造成扫描5次,逻辑I/O 9689次

3.解决方法:

3.1.首先使用杀毒软件查杀,无毒 下一步

3.2使用jsky查看是不否有SQL注入,无 下一步

3.3使用查表中索引碎片,是否很多,不多 下一步

3.4使用 SQL Profiler监控,存储过程,游标的运行情况,及占用CPU时间,如果运行次数少占

用高,也没多大关系 下一步

3.5使用SQL Profiler监控CPU占用率高时的T-SQL语句,发现问题,两条SQL语句运行的很频率

3.6把T-SQL语句复制到QUERY脚本中,保存,使用数据库引擎优化顾问,运行分析保存的T-SQL

最后原来出来了,查询的表中只有默认的聚集索引,没有在经常查询的筛选列中创建索引,先把查询

表中的统计值更新一下(statistics),然后创建非聚集索引,再使用当条语句进行查询

结果:扫描1次,逻辑I/O 3次,至此,优化成功!问题解决啦,现在CPU占用基本不会超过50%,基本

在0-20%之间.

 

posted on 2013-01-21 12:30  酷库裤cool  阅读(712)  评论(0)    收藏  举报