错误信息:Microsoft 分布式事务处理协调器(MS DTC)已取消此分布式事务

【开发心得】(MS DTC)已取消此分布式事务解决方案之一 今天是2021年第一个工作日,没想到就碰到了诡异问题:系统的不同用户执行同一个事务操作,结果有的可以,有的不可以!但本地测试,都是可以的! 于是,首先重启了服务器上所有的相关服务,然后问题依旧。 阅读详情


在联机文档中是这样描述MS DTC的:
Microsoft 分布式事务处理协调器 (MS DTC) 是一个事务管理器,它允许客户端应用程序在一个事务中包含多个不同的数据源。MS DTC 协调在所有已在事务中登记的服务器间提交分布式事务。
Microsoft® SQL Server™ 安装可通过下列方法参与分布式事务:
1,调用运行 SQL Server 的远程服务器上的存储过程。 
2,自动或显式地将本地事务提升为一个分布式事务并在该事务中登记远程服务器。
3, 执行分布式更新以更新多个 OLE DB 数据源上的数据。如果这些 OLE DB 数据源支持 OLE DB 分布式事务接口,SQL Server 还可以将它们登记在分布式事务中。 MS DTC 服务协调正确完成分布式事务,以确保所有服务器上的全部更为永久性的,或在发错误时删除所有更新。 
SQL->CREATE TABLE test1 ([id] int ,email varchar(50))
表test1在A服务器中,表email在B服务器中,其表结构和test1一样。在A服务器中运行
SQL->EXEC sp_addlinkedserver 'B','SQL Server' 
SQL->GO
SQL->EXEC sp_addlinkedsrvlogin 'B','false','sa','sa','123456'
同样在B服务器中运行以上代码,不同的是服务器名称的变化。
在B服务器中执行如下语句:
SQL->CREATE PROCEDURE dbo.usp_test 
SQL->AS
SQL->SELECT id,email FROM email 
SQL->GO
这样就把为AB服务器互相添加了Linked Server,并在AB服务器中启动MSDTC服务。在A服务器中运行如下语句:
SQL->BEGIN TRANSACTION Ta
SQL->INSERT INTO test (id,email) 
SQL->EXEC a.test.dbo.usp_test 
SQL->COMMIT TRANSACTION Ta
运行出错,错误如下:
服务器: 消息 7391,级别 16,状态 1,行 1
该操作未能执行,因为 OLE DB 提供程序 'SQLOLEDB' 无法启动分布式事务。 [OLE/DB provider returned message: 新事务不能登记到指定的事务处理器中。 ] OLE DB 错误跟踪[OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a]。<br>估计是MSDTC的相关配置有问题。检查MSDTC配置。似乎都满足先制条件。苦思,终不得解,去网上找相关资料。终于不负有心人,找到了解决方法。继续……
解决方法:
 
组件服务=WIN+R调出运行框,输入dcomcnfg 

组件服务--> a.展开"组件服务"树,然后展开"我的电脑"。b.右键单击"我的电脑",然后选择"属性"。C.在 MSDTC 选项卡中‘安全配置’按钮,确保选中了下列选项:网络 DTC 访问。网络事务 XA 事务 d.另外,"DTC 登录帐户"一定要设置为"NT Authority\NetworkService"。e单击"确定",重新启动MSDTC。 
再次运行以上语句,结果成功。

导入Microsoft分布式事务处理协调器MSDTC失败的解决方案 大家跨服务器加事务的时候经常遇到以下报错:导入Microsoft分布式事务处理协调器MSDTC,网上大部分教程都是服务器配置msdtc,但是发现两个服务器都配置之后还是不行,可参照此图片解决,已验证过,不好用找我,最低可以支持到sqlserver2005的数据库以及2008R2的服务器,再低的版本没有验证过。 立即下载

相关推荐

从涡流求解器到瞬态场:Maxwell 3D里无线充电仿真,选对求解器能省一半计算时间

本文深入探讨了Maxwell 3D在无线充电仿真中涡流求解器与瞬态求解器的选择策略,帮助工程师优化计算效率与精度。通过对比分析两种求解器的适用场景、性能差异及实战技巧,揭示如何根据频率特性、材料非线性和动态过程需求做出精准选择,可节省高达50%的计算时间。特别针对3D线圈模型的无线充电系统设计提供了专业建议。

weixin_26861329的博客 230

SQL Server 分布式事务处理(MS DTC)初探

在联机文档中是这样描述MS DTC的:Microsoft 分布式事务处理协调器 (MS DTC) 是一个事务管理器,它允许客户端应用程序在一个事务中包含多个不同的数据源。MS DTC 协调在所有已在事务中登记的服务器间提交分布式事务。Microsoft® SQL Server™ 安装可通过下列方法参与分布式事务:1,调用运行 SQL Server 的远程服务器上的存储过程。 2,自

徜徉在微软的陷阱 1613

Allegro17.4原理图-PCB双向联动技巧:从网表生成到同步高亮

本文深入解析了Cadence Allegro 17.4中原理图与PCB的深度双向联动技巧。核心在于通过精准的网表生成与管理、实时的跨窗口交互高亮与信号追踪,以及元件与封装的智能匹配更新,构建高效协同设计工作流。掌握这些技巧能显著提升高速、高密度电路设计的效率与准确性,实现从逻辑设计到物理实现的无缝衔接。

weixin_29178069的博客 358

msdtc备份oracle,c# - MSDTC已取消分布式交易 - 堆栈内存溢出

System.ServiceModel.FaultException`1 [System.ServiceModel.ExceptionDetail]:帐户条目未保存... Microsoft分布式事务处理协调器(MS DTC)已取消分布式事务。 (故障详细信息等于ExceptionDetail,可能由IncludeExceptionDetailInFaults = true创建,其值是:Syst...

weixin_34873494的博客 238

SpyGlass CDC实战:如何用sgdc约束文件解决跨时钟域报错(附常见错误排查)

本文详细介绍了如何使用SpyGlass CDC工具链中的sgdc约束文件解决跨时钟域(CDC)报错问题。从基础约束文件架构到复杂场景调试,涵盖了时钟域定义、复位信号约束、Waiver策略等关键技巧,并附有常见错误排查方法,帮助工程师高效处理CDC验证挑战。

loss4bartender的博客 1148

Java开发者必备:Ollama4j客户端库全面指南与实战

在AI应用开发领域,本地部署大型语言模型(LLM)已成为降低成本和提升隐私安全的重要趋势。其核心原理是通过REST API与模型服务器交互,实现文本生成、对话和语义理解等功能。这一技术为Java生态系统带来了显著的工程价值,使开发者能够便捷地将AI能力集成到企业级应用中。Ollama4j作为一款专为Java设计的轻量级客户端库,通过封装底层HTTP通信和JSON处理,提供了类型安全、面向对象的API,极大地简化了与Ollama服务器的交互。它全面支持流式生成、多轮对话、嵌入向量计算以及高级的**工具调用**

weixin_28295799的博客 436

SQL state [S000169]; error code [1206]; Microsoft 分布式事务处理协调器(MS DTC)已取消此分布式事务

项目中有个流程最后提交审批的时候由于后台处理比较复杂,事务处理没有优化,导致数据库中对同一张表即update又select,产生了几个死锁,但是死锁过一会就自动消失了。报错如下: 2018-08-07 08:58:08.302 [http-nio-9999-exec-6] ERROR o.a.e.i.interceptor.CommandContext - Error while closing...

weixin_42441435的博客 2264

Android开发实战:5分钟搞定全屏沉浸式状态栏(附完整代码示例)

本文提供了Android开发中实现全屏沉浸式状态栏的完整实战指南。通过对比主题配置、动态代码设置和Window标志位三种方法,详细讲解了如何隐藏状态栏并处理布局适配。文章还涵盖了刘海屏、手势导航等高级适配场景,并附有可直接使用的工具类代码,帮助开发者快速提升应用视觉体验。

weixin_29197699的博客 357

数据库引擎错误

该表包含错误消息编号和描述,它是sys.messages目录视图中错误消息的文本。 如果适用,错误编号是指向更多信息的链接。 此列表并不详尽。 有关所有错误的完整列表,请使用以下查询查询sys.messages目录视图: SELECT message_id AS Error, severity AS Severity, [Event Logged] = CASE is_event_logged WHEN 0 THEN 'No' ELSE 'Yes' END, text AS [Description]

极客神殿 6216

基于THUCNews数据集bert bert_wwm的新闻文本分类

基于THUCNews数据集bert bert_wwm的新闻文本分类

984

【异常】Cursor 模型服务地域访问限制报错的完整排查与解决方案This model provider doesn‘t serve your region

其本质是:Cursor客户端依赖的上游大语言模型服务提供商,基于自身服务的合规运营范围,对客户端发起的请求进行了来源地域权限校验;当系统检测到请求的网络来源地域,不在该模型服务商官方授权提供服务的地域范围内时,会触发服务访问拦截策略,拒绝响应本次模型调用请求,最终在客户端抛出该报错。合规声明:本文所提供的所有方案,均仅用于技术问题排查与解决,请您在使用过程中严格遵守当地法律法规,以及对应软件与模型服务提供商的用户协议与合规要求。更多关于AI+教育领域的干货,可以关注我的微信公众号一时间获取哦~

奶爸的编程之路,也就一周冷个三天 1132

解决SQL Server中的DTC错误

     SQL Server的连接服务器设置可以使你执行查询和存储过程,并通过连接其它的SQL Server和数据库系统接收来自外部的数据集。  微软分布式传输协调程序(MSDTC)的作用是在多系统的基础上,强制保持事务的一致性。要确保功能的正确实现并不出问题,你需要合理地设置MSDTC和SQL Server。   如果MSDTC配置不合理,那么就会出现以下的错误信息:   

csdnseeman的专栏 4242

STM32电机PID速度控制

2.3 STM32电机PID速度控制 之前的文章,完成了直流减速电机的PWM控制、电机测速。本篇文章,将实现电机的速度闭环控制。 在公众号:小白学移动机器人,发送:速度PID,即可获得本篇文章的STM32工程文件以及相关资料。 2.3.1 解决的问题 解决带编码器直流电机的速度闭环问题。 2.3.2 PID理论 将偏差的比例、积分、微分,通过线性组合构成控制量,用控制量对被控对象进行控制,这样的控制器称为PID控制器。在连续空间中,我们通常探讨模拟PID的控制原理,如图所示: 我们这里用电机速度控制为例,

「小白学移动机器人」一个专注分享移动机器人相关知识的公众号! 6万+

分布式执行存储过程,sql server2008事务回滚和抛异常的顺序

1、抛异常raiserror  xxxxxxx info2、rollback transaction1、2顺序反了可能发生“Microsoft 分布式事务处理协调器(MS DTC)已取消此分布式事务”异常。

沧海一粟 1356

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

网络MSDTC(分布式事务处理协调器)服务配置方法

一、启用网络DTC访问的步骤 启用网络DTC是分布式数据库事物控制的必要条件。设置过程应依下面步骤进行。 1)单击“开始”,指向“控制面板”,然后单击“添加或删除程序”; 2)单击“添加/删除 Windows 组件”; 3)选择“应用程序...

ciji4412的博客 1673

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

MSDTC 分布式事务错误解决

  最近 在做项目的过程中总会遇到MSDTC的错误,网上也很多人问到这个问题,错误信息大约描述为: [COMException (0x8004d00e): 此事务已明地或暗地被确认或终止 (异常来自 HRESULT:0x8004D00E)]   System.Transactions.Oletx.ITransactionShim.Export(UInt32 whereaboutsSize, B

Night_Elf的专栏 5107

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

无法启动 MS DTC 事务管理器--解决方案

问题解决: 删除关联的注册表项及重新安装msdtc组件 把下面保存为 msdtc.bat @echo offsetlocal@echo %WINDIR%/System32/msdtc.exe -uninstall%WINDIR%/System32/msdtc.exe -uninstallcall :delkey "HKCR/CID"call :delkey "HKLM/SYSTEM/Current

lovenjoy的专栏 2285

“COM+ 无法与Microsoft分布式事务协调程序交谈”之终极解决方案

这两日被这个问题困扰很深,重装了系统n+1遍,还是青山依旧在。于是借助强大的网络,搜索整理了以下资料,往对正处于水深火热的同志们彻底解决麻烦。 1、首先进入组件服务,查看组件服务/计算机/我的电脑/COM+应用程序,结果报错“COM+ 无法与Microsoft分布式事务协调程序交谈”,无法查看里面的对象。2、进入事件查看器,发现msdtc服务没有正常启动。3、删除注册表中的键值(注意,

海水正蓝 4134

The Microsoft Distributed Transaction Coordinator (MS DTC) has cancelled the distributed transaction...

同事反馈一个系统在运行一个存储过程时遇到了下面错误:   Msg 1206, Level 18, State 169, Procedure xxxxxx, Line 118The Microsoft Distributed Transaction Coordinator (MS DTC) has cancelled the distributed transaction. 费了九牛二虎之力才定位到...

weixin_34416754的博客 367

使用分布式事务配置MSDTC的步骤

使用分布式事务配置MSDTC的步骤:  1、启动Distributed Transaction Coordinator服务  2、打开“控制面板”-》“管理工具”-》“组件服务”窗口。  3、选中“组件服务”-》“计算机”-》“我的电脑”节点  4、在菜单栏下面的常用工具栏中,选择"配置我的电脑"的图标  5、在弹出窗口的"MSDTC"选项卡中,勾选“使用本地协调器”  6、点击“安全

那一抹、璀璨 1858

分布式事务-基于DTC的分布式事务管理模型(结合高级数据库系统书(分布式数据库的))

讨论Windows事务处理模型,首先来看看在这个模型中各个事务参与者各自扮演怎样的角色。 对于所有的事务参与者,按照各自在整个事务生命周期各个阶段所承担的职能,大致扮演着如下三种角色: 应用(Application)、服务(Service)或者组件(Component):代表用户程序,或者是承载着某功能的服务(Service)或者组件(Component);资源管理器(RM:Resou

long636的专栏 2670
上一篇: .NET源代码保护--MAXTOCODE
下一篇: 时间匹配小例子
ArvinStudy
博客等级 码龄15年 83粉丝 193原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值