<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

    搜索

    •  

    積分與排名

    • 積分 - 826274
    • 排名 - 49

    最新評論

    閱讀排行榜

    評論排行榜

    轉:http://database.51cto.com/art/201011/233039.htm
    SQL Server死鎖使我們經常遇到的問題,下面就為您介紹如何查詢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,數據庫ID=dbid,  
    9. 數據庫名=db_name(dbid),用戶ID=uid,用戶名=loginame,累計CPU時間=cpu,  
    10. 登陸時間=login_time,打開事務數=open_tran, 進程狀態=status,  
    11. 工作站名=hostname,應用程序名=program_name,工作站進程ID=hostprocess,  
    12. 域名=nt_domain,網卡地址=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
    主站蜘蛛池模板: 亚洲综合在线另类色区奇米| 一区二区三区免费看| 亚洲成亚洲乱码一二三四区软件| 99re热免费精品视频观看| 黄色片免费在线观看| 男人和女人高潮免费网站| 7777久久亚洲中文字幕| 亚洲国产综合91精品麻豆| 亚洲一区二区精品视频| 日本v片免费一区二区三区| 无码av免费毛片一区二区| 99久久人妻精品免费一区| 国产精品免费久久久久久久久| 亚洲色丰满少妇高潮18p| 亚洲国产成人资源在线软件| 久久久久亚洲av无码尤物| 国产亚洲美日韩AV中文字幕无码成人| 国产午夜鲁丝片AV无码免费| 在线观看无码AV网站永久免费| 久久香蕉国产线看免费| 一个人免费播放在线视频看片| 免费无码午夜福利片| 免费观看亚洲人成网站| 337P日本欧洲亚洲大胆艺术图| 亚洲男人天堂2018av| 亚洲一区二区三区在线网站| 亚洲精品免费在线视频| 亚洲精品视频在线观看视频| 精品亚洲成a人片在线观看| 亚洲欧洲日产国码久在线观看| 亚洲va无码va在线va天堂| 国产AV无码专区亚洲AV男同 | 久久夜色精品国产亚洲AV动态图| 国产成人精品久久亚洲高清不卡 | 亚洲av手机在线观看| 免费人成在线观看视频播放| 免费a级毛片视频| 亚洲中文无韩国r级电影| 久久亚洲欧洲国产综合| 亚洲精品无码专区久久久| 亚洲成亚洲乱码一二三四区软件|