hehuarong

这两天数据库经常被锁,所以记录一下操作:

查看被锁表:
select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName
from sys.dm_tran_locks where resource_type=\'OBJECT\'

--spid 锁表进程
--tableName 被锁表名

解锁:

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

--查询出死锁的SPID
select blocked
from (select * from sysprocesses where blocked>0 ) a
where not exists(select * from (select * from sysprocesses where blocked>0 ) b
where a.blocked=spid)

--输出引起死锁的操作
DBCC INPUTBUFFER (@spid)
--查询当前进程数

select count(-1) from sysprocesses
where dbid in (select dbid from sysdatabases where name like \'%telcount%\');

分类:

技术点:

相关文章:

  • 2021-12-10
  • 2021-12-10
  • 2021-09-09
  • 2021-12-16
猜你喜欢
  • 2021-08-26
  • 2021-07-19
  • 2021-10-24
  • 2021-04-10
  • 2021-07-03
  • 2021-11-12
  • 2021-09-11
相关资源
相似解决方案