SQL SERVER占用CPU过高优化
SQL SERVER占用CPU过高优化

SQL SERVER占用CPU过高优化

作系统是Windows2008R2 ,数据库是SQL2014 64位。

  近阶段服务器出现过几次死机,管理员反馈机器内存使用率100%导致机器卡死。于是做了个监测服务器的软件实时记录CPU数据,几日观察得出数据如下:

1110877-20170327172304983-1184749574

  SQL优化方法:

  1、查看连接对象

 

1110877-20170327173257670-20730016

  当前连接对象有67个其中‘WINAME’的主机名,‘jTDS’的进程名不属于已知常用软件,找到这台主机并解决连接问题。在360流量防火墙中查看有哪个软件连接了服务器IP,除之。

1110877-20170327174600670-853021248

2、然后使用下面语句看一下各项指标是否正常,是否有阻塞,正常情况下搜索结果应该为空。

 

 

 

查看是哪些SQL语句占用较大可以使用下面代码

 

 

3、如果SQLSERVER存在要等待的资源,那么执行下面语句就会显示出会话中有多少个worker在等待

 

 

4、查询CPU占用最高的SQL语句

 

 

5、索引缺失查询

 

 找到索引缺失的表,根据查询结果中的关键次逐一建立索引。做完这些测试,基本能找到问题。

发表回复