SQL SERVER数据库 死锁

网上搜来的

--查询哪些进程导致哪些表死锁 

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


    ----KILL掉进程

declare @spid  int 
    Set @spid  = 62 --锁表进程
    declare @sql varchar(1000)
    set @sql='kill '+cast(@spid  as varchar)
    exec(@sql)


    

真不行,重启SQL SERVER服务

但是为什么会死锁,你心里有点B数,事务提交了吗,数据量是不是太大,执行前有记得去看你自己调用的是哪个存过吗?

建议你做个实验:自己建一个表,往里面insert数据,但不提交。再开一个查询窗口,查询表里的数据,看看会不会卡住。

有没有把insert、update和commit间的时间控制到最小,真不行那就只能打日志了,看是卡在哪一步了

发布了53 篇原创文章 · 获赞 32 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/niuniuyaobuyao/article/details/90413293