<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 6  文章 - 129  trackbacks - 0
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(14)

    隨筆檔案(6)

    文章分類(467)

    文章檔案(423)

    相冊

    收藏夾(18)

    JAVA

    搜索

    •  

    積分與排名

    • 積分 - 825731
    • 排名 - 49

    最新評論

    閱讀排行榜

    評論排行榜

    轉(zhuǎn):http://database.51cto.com/art/201011/233039.htm
    SQL Server死鎖使我們經(jīng)常遇到的問題,下面就為您介紹如何查詢SQL Server死鎖,希望對您學習SQL Server死鎖方面能有所幫助。

    SQL Server死鎖的查詢方法:

    1. exec master.dbo.p_lockinfo 0,0 ---顯示死鎖的進程,不顯示正常的進程  
    2.  
    3. exec master.dbo.p_lockinfo 1,0 ---殺死死鎖的進程,不顯示正常的進程 

    SQL Server死鎖的解除方法:

    1. Create proc p_lockinfo  
    2. @kill_lock_spid bit=1, --是否殺掉死鎖的進程,1 殺掉, 0 僅顯示  
    3. @show_spid_if_nolock bit=1 --如果沒有死鎖的進程,是否顯示正常進程信息,1 顯示,0 不顯示  
    4. as  
    5.  
    6. declare @count int,@s nvarchar(1000),@i int  
    7. select id=identity(int,1,1),標志,  
    8. 進程ID=spid,線程ID=kpid,塊進程ID=blocked,數(shù)據(jù)庫ID=dbid,  
    9. 數(shù)據(jù)庫名=db_name(dbid),用戶ID=uid,用戶名=loginame,累計CPU時間=cpu,  
    10. 登陸時間=login_time,打開事務數(shù)=open_tran, 進程狀態(tài)=status,  
    11. 工作站名=hostname,應用程序名=program_name,工作站進程ID=hostprocess,  
    12. 域名=nt_domain,網(wǎng)卡地址=net_address  
    13. into #t from(  
    14. select 標志='死鎖的進程',  
    15. spid,kpid,a.blocked,dbid,uid,loginame,cpu,login_time,open_tran,  
    16. status,hostname,program_name,hostprocess,nt_domain,net_address,  
    17. s1=a.spid,s2=0 
    18. from master..sysprocesses a join (  
    19. select blocked from master..sysprocesses group by blocked  
    20. )b on a.spid=b.blocked where a.blocked=0 
    21. union all  
    22. select '|_犧牲品_>',  
    23. spid,kpid,blocked,dbid,uid,loginame,cpu,login_time,open_tran,  
    24. status,hostname,program_name,hostprocess,nt_domain,net_address,  
    25. s1=blocked,s2=1 
    26. from master..sysprocesses a where blocked<>0  
    27. )a order by s1,s2  
    28.  
    29. select @count=@@rowcount,@i=1 
    30.  
    31. if @count=0 and @show_spid_if_nolock=1 
    32. begin  
    33. insert #t  
    34. select 標志='正常的進程',  
    35. spid,kpid,blocked,dbid,db_name(dbid),uid,loginame,cpu,login_time,  
    36. open_tran,status,hostname,program_name,hostprocess,nt_domain,net_address  
    37. from master..sysprocesses  
    38. set @count=@@rowcount  
    39. end  
    40.  
    41. if @count>0  
    42. begin  
    43. create table #t1(id int identity(1,1),a nvarchar(30),b Int,EventInfo nvarchar(255))  
    44. if @kill_lock_spid=1 
    45. begin  
    46. declare @spid varchar(10),@標志 varchar(10)  
    47. while @i<=@count  
    48. begin  
    49.    select @spid=進程ID,@標志=標志 from #t where id=@i  
    50.    insert #t1 exec('dbcc inputbuffer('+@spid+')')  
    51.    if @標志='死鎖的進程' exec('kill'+@spid)  
    52.    set @i=@i+1  
    53. end  
    54. end  
    55. else  
    56. while @i<=@count  
    57. begin  
    58.    select @s='dbcc inputbuffer('+cast(進程ID as varchar)+')' from #t where id=@i  
    59.    insert #t1 exec(@s)  
    60.    set @i=@i+1  
    61. end  
    62. select a.*,進程的SQL語句=b.EventInfo  
    63. from #t a join #t1 b on a.id=b.id  
    64. end  


    posted on 2012-05-28 18:04 Ke 閱讀(1544) 評論(0)  編輯  收藏 所屬分類: sql server
    主站蜘蛛池模板: 美女免费视频一区二区| 无码乱人伦一区二区亚洲| 亚洲色大情网站www| 3d动漫精品啪啪一区二区免费| 亚洲人成色7777在线观看| 国产亚洲精品美女久久久久| 久久久久免费看黄A片APP| 亚洲国产成人久久三区| 无码国产精品一区二区免费虚拟VR| 亚洲国产国产综合一区首页| 久久99精品视免费看| 亚洲熟妇无码爱v在线观看| 日本h在线精品免费观看| 麻豆狠色伊人亚洲综合网站| 免费看香港一级毛片| 免费无码AV一区二区| 亚洲av综合avav中文| 中文字幕天天躁日日躁狠狠躁免费| 亚洲精品中文字幕乱码影院| 可以免费看黄视频的网站| 亚洲成a人无码亚洲成www牛牛| 亚洲AV中文无码乱人伦在线视色| 日本亚洲欧美色视频在线播放| 国产乱辈通伦影片在线播放亚洲| 久久免费99精品国产自在现线| 久久精品国产亚洲av麻豆| AV大片在线无码永久免费| 国产一区二区三区亚洲综合| 亚洲短视频男人的影院| 日本一区免费电影| 日本xxxx色视频在线观看免费 | 亚洲精品高清无码视频| 久草视频免费在线观看| 国产久爱免费精品视频| 亚洲一区精彩视频| 亚洲va无码手机在线电影| 国产免费人成视频在线观看| 曰批全过程免费视频网址 | 学生妹亚洲一区二区| 亚洲国产精品一区第二页| 国产又长又粗又爽免费视频|