热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SQLServer如何杀死阻塞中的负SPID

SQLServer负SPID在我们知道如何处理这些负面会话之前,我们需要知道它们是什么以及它们是如何引起的。有不同的负值,在本技巧中,我们将重点介绍-2值的SPID。SPID等于-

SQL Server 负SPID

在我们知道如何处理这些负面会话之前,我们需要知道它们是什么以及它们是如何引起的。有不同的负值,在本技巧中,我们将重点介绍 -2 值的 SPID。

SPID 等于 -2 的会话是孤立的分布式事务。分布式事务是调用托管在不同服务器上的数据库的数据库事务。孤立的,也称为不确定的 MSDTC 事务,是具有未知事务状态的 Microsoft 分布式事务,因为 MSDTC 服务由于 MSDTC 服务崩溃或意外重启而无法正确识别它。


使用组件服务中止可疑事务

首先要排除故障的是 MSDTC 本身。通过在服务器上的 Windows 运行框中键入dcomcnfg转到组件服务。

在组件服务中,浏览到计算机 -> 我的电脑 -> 分布式事务协调器 如下所示。然后找到相应的 DTC 服务。下面你可以看到有几个在这个服务器上运行,本地 DTC 和集群 DTC。获得正确的 DTC 后,转到交易统计并查看 当前部分中的不确定交易,如下所示:


有疑问的号码

如果发现一个In Doubt不为 0的值,转到 transaction list,可以看到这些标记为不确定的事务。右键单击此事务并选择Resolve (如下图所示中止) 。


存疑价值

在 Management Studio 中杀死 SQL Server 负SPID

如果没有发现 In Doubt 中的事务或该进程仍在 SQL Server 中运行,该怎么办?

在这种情况下,事务仍在进行中,但 MSDTC 看不到它,因为它失去了对事务的跟踪,因此它不会显示为内部进程。现在我们必须使用 SQL Server 来处理它,因为事务仍在访问资源并阻塞数据库资源。如果 SQL Server 没有提交或回滚事务的信息,阻塞将不会停止。

解决此类问题的旧方法是重新启动 SQL Server。但是现在我们只需要另一种方法来终止这个会话,但我们不能使用它的 SPID,因为它是负数。

为了杀死这些负 SPID,我们需要使用工作单元 ID,它是由 MSDTC 分配给事务的 24 个字符的 GUID。这个值之所以有用是因为它在操作系统和 SQL Server 引擎之间是通用的。

为了检索此值,我们将使用以下查询在sys.dm_tran_locks 系统表中查询 request_session_id 等于 -2 的会话:

USE Master;
GO
SELECT
DISTINCT(request_owner_guid) as UoW_Guid
FROM sys.dm_tran_locks
WHERE request_session_id =-2
GO

获得 GUID 后,您可以将此值与 KILL 语句一起使用,如下所示:

KILL 'EB159BBE-B3D5-4F25-971A-F221F09188E1' -- 用上面查询中的 UoW_Guid 值替换 GUID 值

这应该会终止会话,现在会话不再被阻止并且孤立事务停止。



推荐阅读
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • web.py开发web 第八章 Formalchemy 服务端验证方法
    本文介绍了在web.py开发中使用Formalchemy进行服务端表单数据验证的方法。以User表单为例,详细说明了对各字段的验证要求,包括必填、长度限制、唯一性等。同时介绍了如何自定义验证方法来实现验证唯一性和两个密码是否相等的功能。该文提供了相关代码示例。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • 如何在php文件中添加图片?
    本文详细解答了如何在php文件中添加图片的问题,包括插入图片的代码、使用PHPword在载入模板中插入图片的方法,以及使用gd库生成不同类型的图像文件的示例。同时还介绍了如何生成一个正方形文件的步骤。希望对大家有所帮助。 ... [详细]
author-avatar
小熊维尼-b晴
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有