Sqlserver查詢死鎖及殺死死鎖的方法

-- 查詢死鎖
select    
    request_session_id spid,   
    OBJECT_NAME(resource_associated_entity_id) tableName    
from    
    sys.dm_tran_locks   
where    
    resource_type='OBJECT'

殺死死鎖進程:session

kill spid
--例如
kill 354 

創造死鎖條件:spa

執行事務鎖定表(增刪改操做),事務外執行查詢操做,模擬死鎖code

BEGIN TRANSACTION--開始事務

update   CM_Code  set CodeCount=1  where id='34'

WAITFOR DELAY '02:00'; 
select * from CM_Code where id='34'

執行查詢死鎖的語句:blog

select    
    request_session_id spid,   
    OBJECT_NAME(resource_associated_entity_id) tableName    
from    
    sys.dm_tran_locks   
where    
    resource_type='OBJECT'

獲得以下結果:進程

執行殺死死鎖的加腳本以下:事務

kill 56 

這樣就解除了死鎖ci

@陳臥龍的博客博客

相關文章
相關標籤/搜索