`
sogotobj
  • 浏览: 651732 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

一短查询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为常量,不能为变量,要用变量,请用动态语句

分享到:
评论

相关推荐

    SQLServler自动杀死死锁进程

    "SQLServer自动杀死死锁进程"这一话题旨在探讨如何配置SQL Server来自动检测并解决这些死锁情况,以避免系统阻塞和性能下降。 1. **死锁的基本概念**: 死锁是指两个或多个事务在执行过程中,因争夺资源而造成的一...

    sql数据库死锁查询工具

    查询阻塞进程SQL工具"可能是指特定的数据库管理工具或脚本,用于实时监控和诊断SQL数据库中的死锁和阻塞情况。这类工具通常提供界面友好的方式来查看和分析阻塞链路,定位问题源头,帮助管理员迅速解决问题。 总之...

    查询当前阻塞死锁.sql

    脚本查询当前数据库阻塞,阻塞会话事物,进程,锁类型等

    sql server 2000阻塞和死锁问题的查看与解决方法

    在SQL Server 2000中,数据库管理系统可能会遇到两种主要的并发问题:阻塞和死锁。这两种情况都会影响数据库的性能和正常运行。 **阻塞** 是指一个数据库事务(连接)持有某些资源(如表锁、页锁等),而另一个事务...

    Microsoft SQL Server 2005技术内幕 查询、调整和优化

     本书适合于专业数据库开发者、BI开发者、DBA和以SQL Server作为后台数据库的一般应用程序开发者,读者可以通过书中的最佳实践、高级技巧和代码示例来掌握查询调整和优化的技巧,以针对不同问题开发出切合实际的高...

    SQL Server 2008管理员必备指南(超高清PDF)Part1

    6.2 确定系统和服务器信息 6.3 配置身份验证和审核 6.3.1 设置身份验证模式 6.3.2 设置审核级别 6.3.3 启用或禁用C2审核登录 6.3.4 启用或禁用“符合公共标准” 6.4 调节内存的使用 6.4.1 动态配置内存 6.4.2 使用...

    SQL Server 2008管理员必备指南(超高清PDF)Part3

    6.2 确定系统和服务器信息 6.3 配置身份验证和审核 6.3.1 设置身份验证模式 6.3.2 设置审核级别 6.3.3 启用或禁用C2审核登录 6.3.4 启用或禁用“符合公共标准” 6.4 调节内存的使用 6.4.1 动态配置内存 6.4.2 使用...

    SQL Server 2008管理员必备指南(超高清PDF)Part2

    6.2 确定系统和服务器信息 6.3 配置身份验证和审核 6.3.1 设置身份验证模式 6.3.2 设置审核级别 6.3.3 启用或禁用C2审核登录 6.3.4 启用或禁用“符合公共标准” 6.4 调节内存的使用 6.4.1 动态配置内存 6.4.2 使用...

    SQLServer200自动杀锁

    这个话题对于SQL Server管理员和开发者来说是至关重要的,因为死锁可能会导致事务阻塞,影响数据库的正常运行。下面将详细解释SQL Server 200中的死锁、如何检测死锁、以及如何建立自动杀锁机制。 首先,我们来理解...

    sql server2008性能参数获取语句

    根据给定的信息,本文将详细解释SQL Server 2008中的性能参数获取语句,...通过以上查询语句,可以有效地监控SQL Server 2008中的内存使用情况、全表扫描操作以及死锁问题,从而帮助管理员更好地管理和优化系统的性能。

    sqlserver并发连接测试

    例如,编写自定义的T-SQL脚本来模拟大量并发用户,或者使用像SQL Server Management Studio (SSMS)、SQL Server Profiler这样的工具来监控性能。此外,还可以使用LoadRunner、JMeter等负载测试工具来模拟真实世界的...

    SQL.Server.2008管理员必备指南.part2.rar(2/4)

     6.2 确定系统和服务器信息 130  6.3 配置身份验证和审核 130  6.3.1 设置身份验证模式 131  6.3.2 设置审核级别 132  6.3.3 启用或禁用C2审核登录 132  6.3.4 启用或禁用“符合公共标准” 133  6.4 调节内存...

    Professional SQL Server 2012 Internals and Troubleshooting

    - **死锁检测:** 讨论了死锁发生的原因以及如何通过SQL Server内置工具来检测和解决死锁问题。 - **并发控制策略:** 并发控制是保证多用户环境中数据完整性的关键。本章提供了几种常见的并发控制方法及其优缺点...

    SQL死锁,删除失败解决办法

    下面是一段用于检测和解决SQL死锁的脚本示例: ```sql SELECT t2.username, t2.sid, t2.serial#, t2.logon_time FROM v$locked_object t1, v$session t2 WHERE t1.session_id = t2.sid ORDER BY t2.logon_time; ```...

    SQL.Server.2008管理员必备指南.part1.rar(1/4)

     6.2 确定系统和服务器信息 130  6.3 配置身份验证和审核 130  6.3.1 设置身份验证模式 131  6.3.2 设置审核级别 132  6.3.3 启用或禁用C2审核登录 132  6.3.4 启用或禁用“符合公共标准” 133  6.4 调节内存...

    sql 执行脚本

    识别死锁相关语句的过程包括查看事务日志、使用专门的死锁检测工具,如SQL Server的deadlock graph扩展事件,以及调整事务隔离级别和资源锁定策略,以减少死锁的发生。 后台语句执行情况主要涉及数据库的后台进程,...

    查看数据库死锁SQL

    根据提供的SQL脚本内容,我们可以看出该脚本主要用于查询MySQL数据库中出现死锁的情况,并获取相关信息,包括但不限于死锁的ID、导致死锁的具体SQL语句以及引发死锁的客户端等。通过这些信息,数据库管理员或开发...

    SQL优化 DMV 动态视图.rar

    综上所述,这个压缩包中的内容可能包含一系列实用的SQL脚本,旨在帮助数据库管理员通过使用DMV来监控和优化SQL Server的性能。通过深入理解和有效利用这些脚本,我们可以更好地诊断和解决性能问题,确保数据库健康、...

    SQL.Server.2008管理员必备指南.part4.rar(4/4)

     6.2 确定系统和服务器信息 130  6.3 配置身份验证和审核 130  6.3.1 设置身份验证模式 131  6.3.2 设置审核级别 132  6.3.3 启用或禁用C2审核登录 132  6.3.4 启用或禁用“符合公共标准” 133  6.4 调节内存...

    SQL.Server.2008管理员必备指南.part3.rar(3/4)

     6.2 确定系统和服务器信息 130  6.3 配置身份验证和审核 130  6.3.1 设置身份验证模式 131  6.3.2 设置审核级别 132  6.3.3 启用或禁用C2审核登录 132  6.3.4 启用或禁用“符合公共标准” 133  6.4 调节内存...

Global site tag (gtag.js) - Google Analytics