SQL占用了CPU将近100%的资源
SQL占用了CPU将近100%的资源,请问怎么来处理呀,是否有CPU优化的程序软件呀,推荐一下。...
SQL占用了CPU将近100%的资源,请问怎么来处理呀,是否有CPU优化的程序软件呀,推荐一下。
展开
2个回答
推荐于2018-05-09 · 知道合伙人互联网行家
关注
展开全部
SQL占用了CPU将近100%的资源,解决方法如下:
1、服务器CPU过高,首先查看系统进程,确定引发CPU过高的进程;
2、通过SQLServer Profiler能够轻易监控到哪些SQL语句执行时间过长,消耗最多的CPU;
3、通过SQL语句是可以查看每条SQL语句消耗的CPU是多少;
4、导致CPU高的都是进行大量计算的语句:包括内存排序、表扫描、编译计划等;
5、如果使用Top刷选前面几条语句,则尽量为Order By子句建立索引,这样可以减少对所有的刷选结果进行排序;
6、使用Count查询记录数时,尽量通过为where字句的相关字段建立索引以减少表扫描。如果多个表进行join操作,则把相关的表连接字段建立在包含索引中;
7、通过服务端通知的方式,减少SQL语句的查询;
8、通过表分区,尽量降低因为添加索引而导致表插入较慢的影响。
1、服务器CPU过高,首先查看系统进程,确定引发CPU过高的进程;
2、通过SQLServer Profiler能够轻易监控到哪些SQL语句执行时间过长,消耗最多的CPU;
3、通过SQL语句是可以查看每条SQL语句消耗的CPU是多少;
4、导致CPU高的都是进行大量计算的语句:包括内存排序、表扫描、编译计划等;
5、如果使用Top刷选前面几条语句,则尽量为Order By子句建立索引,这样可以减少对所有的刷选结果进行排序;
6、使用Count查询记录数时,尽量通过为where字句的相关字段建立索引以减少表扫描。如果多个表进行join操作,则把相关的表连接字段建立在包含索引中;
7、通过服务端通知的方式,减少SQL语句的查询;
8、通过表分区,尽量降低因为添加索引而导致表插入较慢的影响。
2013-06-02
展开全部
1.服务器系统资源占用100%时,你看看都有那些过程在执行中,尤其是你自己的存储过程,会不会有类似死循环中添加记录(当然最后没有提交)的情况?我用SQL Server时,也遇到过这样的情况:后来发现是有一个存储过程写的有问题:它在一个连接上持续的向SQL server发查询请求。导致了系统资源的100%.你看一下,是否有类似情况。
2.看一下是什么进行占用了CPU利用率。不一定是Sql哦 ,还有你的Sqlserver是不是有什么后台作业在进行。看看你的进程里面是哪个占用的CPU的最大 看看是什么东西,而且千万不要打SP4的补丁,要打SP3的,因为SP4的补丁打上以后,速度会比以前慢的很多很多.等你确定好以后在用优化软件做不迟,我感觉你首先不能用CPU优化的程序软件。
3.以上是我的个人观点不能代表公司,希望您能早点找出原因。
2.看一下是什么进行占用了CPU利用率。不一定是Sql哦 ,还有你的Sqlserver是不是有什么后台作业在进行。看看你的进程里面是哪个占用的CPU的最大 看看是什么东西,而且千万不要打SP4的补丁,要打SP3的,因为SP4的补丁打上以后,速度会比以前慢的很多很多.等你确定好以后在用优化软件做不迟,我感觉你首先不能用CPU优化的程序软件。
3.以上是我的个人观点不能代表公司,希望您能早点找出原因。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询