当前位置: 首页 > news >正文

一短查询SQL Server服务器阻塞和死锁信息用的脚本

--一短查询SQL Server服务器阻塞和死锁信息用的脚本

declare @spid int,@bl int,
@intTransactionCountOnEntry int,
@intRowcount int,
@intCountProperties int,
@intCounter int

create table #tmp_lock_who (
id int identity(1,1),
spid smallint,
bl smallint)

insert into #tmp_lock_who(spid,bl) select 0 ,blocked
from (select * from sysprocesses where blocked>0 ) a
where not exists(select * from (select * from sysprocesses where blocked>0 ) b
where a.blocked=spid)
union select spid,blocked from sysprocesses where blocked>0

-- 找到临时表的记录数
select @intCountProperties = Count(*),@intCounter = 1
from #tmp_lock_who

if @intCountProperties=0
select N'现在没有阻塞和死锁信息' as message
-- 循环开始
while @intCounter <= @intCountProperties
begin
-- 取第一条记录
select @spid = spid,@bl = bl
from #tmp_lock_who where Id = @intCounter
begin
if @spid =0
select N'引起数据库死锁的是: '+ CAST(@bl AS VARCHAR(10)) + N'进程号,其执行的SQL语法如下'
else
select N'进程号SPID:'+ CAST(@spid AS VARCHAR(10))+ N'被' + N'进程号SPID:'+ CAST(@bl AS VARCHAR(10)) +N'阻塞,其当前进程执行的SQL语法如下'
DBCC INPUTBUFFER (@bl )
end

-- 循环指针下移
set @intCounter = @intCounter + 1
end

drop table #tmp_lock_who

附:杀死相关会话的脚本为 kill SPID 注意SPID为常量,不能为变量,要用变量,请用动态语句

相关文章:

  • VB.Net 2005 WinFrom 文件上传程序...
  • 论道谈谈
  • WinDBG 技巧:设断点命令详解(bp, bu, bm, ba 以及bl, bc, bd, be)
  • Auto Complete -- Typeahead 和DateRangePicker
  • 有多少域名被漏掉了?
  • C# Windows Azure Queue的操作
  • 移动设备管理(MDM)与OMA(OTA)DM协议向导(二)——WAP协议(1)
  • Submit disabled Dropdown
  • Validation failed for one or more entities. See 'EntityValidationErrors' property for more details
  • [Windows编程] 如何判断操作系统是64位还是32位
  • 使用Roslyn动态编译和执行
  • 利用Windows7内置功能管理虚拟磁盘
  • 使用cecil 完成 code injection
  • 善用属性
  • SQLServer任意列之间的聚合
  • [译] 怎样写一个基础的编译器
  • “Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!
  • Facebook AccountKit 接入的坑点
  • gitlab-ci配置详解(一)
  • java 多线程基础, 我觉得还是有必要看看的
  • js算法-归并排序(merge_sort)
  • log4j2输出到kafka
  • mysql 数据库四种事务隔离级别
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • Netty 4.1 源代码学习:线程模型
  • quasar-framework cnodejs社区
  • SpiderData 2019年2月16日 DApp数据排行榜
  • Vue2.0 实现互斥
  • Webpack入门之遇到的那些坑,系列示例Demo
  • 阿里云前端周刊 - 第 26 期
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 力扣(LeetCode)965
  • 前端自动化解决方案
  • 一些css基础学习笔记
  • 责任链模式的两种实现
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • ()、[]、{}、(())、[[]]命令替换
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (三) diretfbrc详解
  • (十) 初识 Docker file
  • (一)基于IDEA的JAVA基础1
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • .gitignore文件_Git:.gitignore
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .net core使用RPC方式进行高效的HTTP服务访问
  • .NET 材料检测系统崩溃分析
  • .NET 的程序集加载上下文
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .net6+aspose.words导出word并转pdf
  • .Net开发笔记(二十)创建一个需要授权的第三方组件