首页 > 数据库 >SQL耗时排查

SQL耗时排查

时间:2023-09-26 12:00:11浏览次数:38  
标签:dm 排查 exec sys 耗时 session sql SQL id

sys.dm_exec_requests视图返回的是SQL Server中正在执行的每个请求的信息。也就是如果没有正在执行,是获取不到的。

SELECT r.session_id,
       st.TEXT AS batch_text,
       qp.query_plan AS 'XML Plan',
       r.start_time,
       r.status,
       r.total_elapsed_time
FROM sys.dm_exec_requests AS r
     CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) AS st
     CROSS APPLY sys.dm_exec_query_plan(r.plan_handle) AS qp
--WHERE DB_NAME(r.database_id) = '{db_name}'
ORDER BY cpu_time DESC;

如果发现某条sql执行很慢,可以使用 kill终止
KILL spid; //中止会话session

查找当前阻止的所有请求

SELECT session_id,
    status,
    blocking_session_id,
    wait_type,
    wait_time,
    wait_resource,
    transaction_id
FROM sys.dm_exec_requests
WHERE status = N'suspended';
GO

参考:https://learn.microsoft.com/zh-cn/SQL/relational-databases/system-dynamic-management-views/sys-dm-exec-requests-transact-sql?view=sql-server-ver15

标签:dm,排查,exec,sys,耗时,session,sql,SQL,id
From: https://www.cnblogs.com/kkbk/p/17729800.html

相关文章

  • MySQL主从复制实践
    MySQL主从复制实践多个数据库间主从复制与读写分离的模型​ 在一主多从的数据库体系中,多个从服务器采用异步的方式更新主数据库的变化;业务服务器在执行写或者相关修改数据库的操作是在主服务器上进行的,读操作则是在各从服务器上进行​ Mysql主从复制的实现原理图大致如下​......
  • 【SqlServer系列】001、SELECT语句
     SELECT语句 1、 1基本的select语句1、1、1从表中选择列selecta,bfromtable1、 1、2选择所有列select*fromtable  1、 2 where子句1、2、1 null值注意: 在搜索条件中有null数据时可能会出现unknown值。null值不同于空白或0,只表示值未知。并......
  • MySQL配置文件
    /etc/my.cnf默认配置#Foradviceonhowtochangesettingspleasesee#http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html[mysqld]##Removeleading#andsettotheamountofRAMforthemostimportantdata#cacheinMySQL.Start......
  • Linux CentOS 7.x离线安装PostgreSQL操作手册
    一、准备环节rpm-qa|greppostgres检查PostgreSQL是否已经安装rpm-qal|greppostgres检查PostgreSQL安装位置postgresql-12.2.tar.gz二、Pgsql数据库安装下载下载地址:http://www.postgresql.org/ftp/source/选择你你需要的版本,本次安装12.2的版......
  • Mysql使用 jemalloc 内存分配器
    /usr/lib64/libjemalloc.so是一个动态链接库文件,它包含了jemalloc内存分配器的实现。jemalloc是一个通用的内存分配器,旨在为多线程应用程序提供优秀的性能。它通常被用在需要高效内存管理的应用程序中,如数据库服务器、Web服务器等。安装库文件这个库文件一般是通过系统的包......
  • SQL递归根据下拉框去获取申请人的上级
    场景:表单有下拉框,对应三个层级。下一节点的办理人需要根据这个层级去获取申请人对应的上级。 解决思路:用SQL公共表达式cte递归可以作为一个获取思路:withCTEas(selectlastname,id,manageridfromhrmresourcewhereid=2422UNIONALLselecta.lastname,a.id,a......
  • centos安装php扩展mssql
    注意:1、server-dsn是数据源,事先在freetds.conf配置好的[server-dsn]    host=192.168.10.125    port=1433    tdsversion=8.0clientcharset=UTF-8开始安装1、输入安装命令 自动先安装freetds安装包sudo yum install php-mssql -ysudo ......
  • Linux系统之安装MySQL8.0版本
    一、MySQL介绍1.1MySQL简介MySQL8.0是最新版本的MySQL数据库管理系统,是一种关系型数据库管理系统,由Oracle公司开发和维护。MySQL8.0带来了一系列新特性,包括多个性能提升,更好的安全性和扩展性,以及新的管理功能。1.2MySQL特点更好的性能:MySQL8.0提供了对于大型查......
  • Windows 安装并配置 MySQL 5.7
    Windows安装并配置MySQL5.7 Windows下安装MySQL有两种方式:下载安装包,根据向导提示一步步安装,不需要什么配置,比较简单下载压缩包,通过命令来安装和配置本文介绍第二种安装方法,使用的MySQL版本为5.7.38假设你已经下载了MySQL压缩文件安装包(官网下载地址:https://www.mysql.......
  • mysql 获取最近6个月的年月
      @s< 5 控制多少个月  SELECT DATE_FORMAT(DATE_SUB(CURDATE(),INTERVAL@s:=@s+1MONTH),'%Y-%m')AS`mon` FROM mysql.help_topic, (SELECT@s:=-1)temp WHERE @s<5 ORDERBYmon......