提高MSSQL数据库读取速度,降低CPU损耗

当你的MSSQL数据库cpu很高的时候,如何去定位损耗cpu的SQL语句,并解决损耗问题?接下来我为大家实际解决一下这个问题:

1.首先我们要用查询追踪器追踪耗费cpu的sql语句,如图设置:
  
提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客

  打开查询器后,筛选查询条件,只需要选择红色方框的即可(存储过程和SQL语句的跟踪)

  提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客

 
  点击列筛选器,cpu和duration耗时的条件
  提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客
  提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客
 

  选择你认为有问题的sql语句或者存储过程,选中那条数据,在列表下面有个方框会把sql内容显示在上面,复制出来
  
提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客

 
2. 放到查询器当中,选择红色方框的“数据库引擎优化顾问”

  提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客

  执行分析:
  提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客

  

 分析后,优化顾问会提供优化方案给你,估计能提供57%的速度和损耗,基本上方案都是建议你建立索引
 
提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客

 
 提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客 :这个图标是视图索引,会生成物理文件索引,占硬盘空间 
 提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客 :这个图标是表索引
 
 看下图,分别有几个表需要建立索引的,我们点击“定义”的蓝色连接,
 提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客
 
 把这个建立索引的sql复制到查询器执行一下,即可
 提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客
 
  最后,我们来看看最终优化结果,红色框框的是我优化后的结果,cpu从 57.9% 下降至 27.8%
提高MSSQL数据库读取速度,降低CPU损耗(原创) - worm128 - Winlone技术博客
原文地址:https://www.cnblogs.com/wmlunge/p/3021884.html