【发布时间】:2021-12-28 18:55:17
【问题描述】:
我有 AzureSQL 数据库(预置 - 2vCore,通用),有时我的查询被 SPID = -5 的会话阻止。
我没有找到任何关于此负 SPID 以及如何避免阻止我的查询的信息。
感谢您提供任何信息和帮助
【问题讨论】:
-
这能回答你的问题吗? Negative Number in SPID
我有 AzureSQL 数据库(预置 - 2vCore,通用),有时我的查询被 SPID = -5 的会话阻止。
我没有找到任何关于此负 SPID 以及如何避免阻止我的查询的信息。
感谢您提供任何信息和帮助
【问题讨论】:
具有负 SPID 的会话可能是孤立的事务。您不能使用 KILL 命令终止会话,因为它需要一个正 SPID 号。尝试在 Azure SQL 数据库上运行以下查询:
SELECT
DISTINCT(request_owner_guid) as UoW_Guid
FROM sys.dm_tran_locks
WHERE request_session_id =-5
GO
这应该返回一个类似于以下格式的 GUID:00000000-0000-0000-0000-000000000000
尝试使用 GUID 而不是 SPID 来终止会话,如下所示:
KILL '00000000-0000-0000-0000-000000000000' -- replace GUID value with UoW_Guid value from above query
【讨论】: