当前位置:  数据库>sqlserver

一个查询Sql server数据库死锁的存储过程

    来源: 互联网  发布时间:2014-08-29

    本文导语:  一般在sql server中,当死锁出现以后,维护人员或开发人员大多通过sp_who来查找死锁的进程,然后用sp_kill杀掉。 本文创建一个存储过程sp_who_lock,可以快速查询出是哪个进程出现了死锁,出现死锁的问题在什么地方? sp_who_lock...

一般在sql server中,当死锁出现以后,维护人员或开发人员大多通过sp_who来查找死锁的进程,然后用sp_kill杀掉。
本文创建一个存储过程sp_who_lock,可以快速查询出是哪个进程出现了死锁,出现死锁的问题在什么地方?

sp_who_lock存储过程创建脚本:
 

代码示例:
CREATE procedure sp_who_lock 
as    
begin    
   declare @spid int    
   declare @blk int    
   declare @count int    
   declare @index int    
   declare @lock tinyint    
   set @lock=0    
   create table #temp_who_lock    
 (    
  id int identity(1,1),    
  spid int,    
  blk int    
 )    
 if @@error0 return @@error    
 insert into #temp_who_lock(spid,blk)    
 select 0 ,blocked     
 from (select * from master..sysprocesses where blocked>0)a    
 where not exists(select * from  master..sysprocesses where a.blocked =spid and blocked>0)    
 union select spid,blocked from  master..sysprocesses where blocked>0    
 if @@error0 return @@error    
 select @count=count(*),@index=1 from #temp_who_lock    
 if @@error0 return @@error    
 if @count=0    
 begin    
  select '没有阻塞和死锁信息'    
  return 0    
 end    
 while @index@index and exists(select 1 from #temp_who_lock where id

    
 
 

您可能感兴趣的文章:

  • 查询Sqlserver数据库死锁的一个存储过程分享
  • 查找sqlserver查询死锁源头的方法 sqlserver死锁监控
  • 在SQL Server中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名
  • 分享:在存储过程中使用另一个存储过程返回的查询结果集的方法
  • 查询存储过程中特定字符的方法
  • SQL Server 分页查询通用存储过程(只做分页查询用)
  • mysql 查询数据库中的存储过程与函数的语句
  • 模糊查询的通用存储过程
  • 关键字: oracle,存储过程,数据库,查询,动态sql包,数组,参传,jdbc 1
  • asp.net利用存储过程实现模糊查询示例分享
  • MySQL分表实现上百万上千万记录分布存储的批量查询设计模式详解
  • 存储过程实现(可带查询条件/万能分页/通用)
  • SQL Server 分页查询存储过程代码
  • Sql语句与存储过程查询数据的性能测试实现代码
  • vb.net 使用存储过程进行模糊查询的教程
  • php查询时间段 mysql存储unix时间
  • sqlserver关于分页存储过程的优化【让数据库按我们的意思执行查询计划】
  • 三种SQL分页查询的存储过程代码
  • Oracle 查询存储过程做横向报表的方法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • MongoDB 2.5新查询引擎简介
  • mysql查询语句通过limit来限制查询的行数
  • Mysql查询错误:ERROR:no query specified原因
  • red hat 4.6如何查询到底有几个swap分区?如何查询是否都激活了?
  • Mysql设置查询条件(where)查询字段为NULL
  • Oracle将查询的结果放入一张自定义表中并再查询数据
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • MySQL查询优化:用子查询代替非主键连接查询实例介绍
  • Mysql Select查询执行流程介绍及实例
  • having与子查询 查询各门课程超过80分的学生姓名
  • mysql的SQL_NO_CACHE(在查询时不使用缓存)和sql_cache用法
  • sql中count或sum为条件的查询示例(sql查询count)
  • mysql中查询当前正在运行的SQL语句并找出mysql中运行慢的sql语句
  • mysqli多查询特性 实现多条sql语句查询
  • ubuntu系统中软件安装、卸载以及查询是否已经安装某个软件包的方法
  • Oracle查询表、视图、序列等信息查询
  • Mysql大表查询优化技巧总结及案例分析
  • SQL语言查询基础:连接查询 联合查询 代码
  • CSS3 @media 查询
  • MySQL查询优化:LIMIT 1避免全表扫描提高查询效率
  • MongoDB 查询分析
  • python实现DNS正向查询、反向查询的例子




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3