sql最简单查死锁 sql server中怎样查询引起死锁的sql语句?
sql server中怎样查询引起死锁的sql语句?
当死锁发生后,通过服务端的Trace就可以将死锁信息传到日志。在SQL Server 2000时代,只能通过Trace flag 1204来开启,由于Trace flag 1204并不能提供XML死锁图,在SQL Server 2005以及之后的版本被Trace flag 1222所取代。 为了在服务端针对所有的Session开启Trace flag 1222。可以通过如代码所示。DBCC TRACEON(1222,-1)另一种方法是开启Profiler来捕捉,Profiler捕捉到的图示死锁信息内容就更直观了,
sql server中怎样查询引起死锁的sql语句?
elect0,blockedfrom(select*fromsysprocesseswhereblocked>0)awherenotexists(select*from(select*fromsysprocesseswhereblocked>0)bwherea.blocked=spid)unionselectspid,blockedfromsysprocesseswhereblocked>0OPENs_curFETCHNEXTFROMs_curINTO@spid,@blWHILE@@FETCH_STATUS=0beginif@spid=0select"引起数据库死锁的是:" CAST(@blASVARCHAR(10)) "进程号,其执行的SQL语法如下"elseselect"进程号SPID:" CAST(@spidASVARCHAR(10)) "被" "进程号SPID:" CAST(@blASVARCHAR(10)) "阻塞,其当前进程执行的SQL语法如下"DBCCINPUTBUFFER(@bl)
sql最简单查死锁 sqlserver查看死锁记录 sql死锁查询语句
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。