很多时候,我们在用SQL语句查询数据时,难免会漏掉对SQL语句性能的考虑,所以有时就会造成SqlServer服务占用过高的问题,为了大致排查是哪些SQL语句造成的问题,我们可以通过如下SQL查询出最近所有耗时最大的SQL语句,具体查询SQL语句如下所示:

SELECT s2.dbid,
s1.sql_handle,
(
SELECT TOP 1
SUBSTRING( s2.text,
statement_start_offset / 2 + 1,
((CASE
WHEN statement_end_offset = -1 THEN
(LEN(CONVERT(NVARCHAR(MAX), s2.text)) * 2)
ELSE
statement_end_offset
END
) - statement_start_offset
) / 2 + 1
)
) AS 执行SQL,
last_worker_time '最后执行总耗时(毫秒)',
last_execution_time '最后执行时间',
total_worker_time '所有执行总耗时(毫秒)',
min_worker_time '执行最小耗时(毫秒)',
max_worker_time '执行最大耗时(毫秒)',
execution_count,
plan_generation_num,
total_physical_reads,
last_physical_reads,
min_physical_reads,
max_physical_reads,
total_logical_writes,
last_logical_writes,
min_logical_writes,
max_logical_writes
FROM sys.dm_exec_query_stats AS s1
CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS s2
WHERE s2.objectid IS NULL
ORDER BY last_worker_time DESC,
s1.sql_handle,
s1.statement_start_offset,
s1.statement_end_offset;

执行效果:

SqlServer性能检测之Sql语句排查的更多相关文章

  1. 性能检测参考SQL语句

    /****** Object: StoredProcedure [dbo].[SP_CPU] Script Date: 12/09/2018 19:01:24 ******/ SET ANSI_NUL ...

  2. SqlServer性能检测和优化工具使用详细

    工具概要 如果你的数据库应用系统中,存在有大量表,视图,索引,触发器,函数,存储过程,sql语句等等,又性能低下,而苦逼的你又要对其优化,那么你该怎么办?哥教你,首先你要知道问题出在哪里?如果想知道问 ...

  3. SqlServer性能检测和优化工具使用详细(转)

    转载链接:http://www.cnblogs.com/knowledgesea/p/3683505.html 工具概要 如果你的数据库应用系统中,存在有大量表,视图,索引,触发器,函数,存储过程,s ...

  4. DBA 需要知道N种对数据库性能的监控SQL语句

    --DBA 需要知道N种对数据库性能的监控SQL语句 -- IO问题的SQL内部分析 下面的DMV查询可以来检查当前所有的等待累积值. Select wait_type, waiting_tasks_ ...

  5. SQL Server数据库性能优化之SQL语句篇【转】

    SQL Server数据库性能优化之SQL语句篇http://www.blogjava.net/allen-zhe/archive/2010/07/23/326927.html 近期项目需要, 做了一 ...

  6. Access、SQLServer、Oracle常见SQL语句应用区别

    Access.SQLServer.Oracle常见SQL语句应用区别 关劲松 PMP 如果要兼容Access.SQL Server.Oracle三个数据库版本:我们在编写SQL语句的过程中,尽量使用一 ...

  7. Oracle性能优化之SQL语句

    1.SQL语句执行过程 1.1 SQL语句的执行步骤 1)语法分析,分析语句的语法是否符合规范,衡量语句中各表达式的意义. 2)语义分析,检查语句中涉及的所有数据库对象是否存在,且用户有相应的权限. ...

  8. 数据库性能调优——sql语句优化(转载及整理) —— 篇2

    下面是在网上搜集的一些个人认为比较正确的调优方案,如有错误望指出,定虚心改正 (1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器按照从右到左的顺序处理FROM子句中 ...

  9. 数据库性能调优——sql语句优化(转载及整理) —— 篇1

    一.问题的提出                    在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实 ...

  10. 数据库性能优化之SQL语句优化

    一.问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的编写等是体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统 ...

随机推荐

  1. 使用Acme.sh免费签发SSL证书

    github:https://github.com/acmesh-official/acme.sh 概述一个纯粹用Shell(Unix shell)语言编写的ACME协议客户端.完整的ACME协议实施 ...

  2. Javascript Dom元素信息

    1.Dom元素的大小 属性 说明 调用者 offsetWidth,offsetHeight 返回元素的宽高(border+padding) ,整数 当前Dom元素 clientWidth,client ...

  3. HTML5 表单新的 Input 类型

    H5新增了电子邮箱,手机号码,网址,数量,搜索,范围,颜色选择,时间日期等input类型 1.电子邮箱 type="email" 提供电子邮箱格式验证 如果格式不对,会阻止表单提交 ...

  4. 六步取消win11开机PIN密码登录

    0.前言 新买的电脑打开后首先要进行一系列的操作激活操作系统.在这些操作中最令人讨厌的是设置开机密码(pin). 也许有很多人的电脑需要保密,限制别人登录,这时使用登录pin是很有必要的.而还有很多人 ...

  5. vue-elementui 因滚动条引发的table错位问题

    修复后效果 在网上看到的方法都是设置样式属性,试过之后也不生效,也不知道原因 所以就自己用原生js解决了,代码如下 //修错位 x(){ var u = document.getElementsByC ...

  6. LeetCode题集-7 - 整数反转

    题目:给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果.如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0. 假设环境不允许存储 ...

  7. 【金TECH频道】企业架构转型组合拳来袭,助力金融机构一臂之力

    当前,数字化转型已经成为时代共性课题在政策和技术的双重指引下金融机构逐渐走向差异化竞争的格局面对转型阵痛以契合.明晰的战略规划及企业架构调整来辅助业务变革成为助力企业数字化转型的有效路径金融机构也纷纷 ...

  8. docker limit

    我给docker的systemd

  9. Mac中nginx的默认安装路径和启动方式

    1.安装完以后,可以在终端输出的信息里看到一些配置路径: /usr/local/etc/nginx/nginx.conf (配置文件路径) /usr/local/var/www (服务器默认路径) / ...

  10. java 实现N进制转M进制

    1. 把10进制转成N进制:除N取余,逆序排列 这里逆序排列使用StringBuilder类的reverse()函数来实现.   /**    * 10进制整数转换为N进制整数. 10进制转换为N进制 ...