SQL Server LCK_M_S仅在生产中发生

前端之家收集整理的这篇文章主要介绍了SQL Server LCK_M_S仅在生产中发生前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个由sql Server 2012报告调用的存储过程,由于阻塞会话lck_m_s,该报告由于与开发相比在生产中运行了一个年龄

存储过程在sql Server Management Studio中执行时即时运行,并且当通过Visual Studio从开发笔记本电脑中作为报告的一部分调用时也可以正常运行.

将报告上载到生产服务器时,将显示此阻止问题.

如何在生产中找出导致lck_m_s问题的原因?

解决方法

问题再次发生时执行此查询
select * from 
sys.dm_os_waiting_tasks t
inner join sys.dm_exec_connections c on c.session_id = t.blocking_session_id
cross apply sys.dm_exec_sql_text(c.most_recent_sql_handle) as h1

它将为您提供导致阻塞的会话的spid,阻止资源的文本以及该会话的最有争议的查询的文本.这应该给你一个坚实的起点.

猜你在找的MsSQL相关文章