使用了环境事务(TransactionScope) 跨库操作导致 服务器"xxxx" MSDTC 不可用解决办法...

本文介绍MSDTC(分布式交易协调器)服务的作用及其配置方法,并提供详细的故障排查指南,包括如何重启服务、解决启动问题及跨服务器配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MSDTC(分布式交易协调器),协调跨多个数据库、消息队列、文件系统等资源管理器的事务。该服务的进程名为Msdtc.exe,该进程调用系统Microsoft Personal Web Server和Microsoft SQL Server。该服务用于管理多个服务器 .

 

位置:控制面板--管理工具--服务--Distributed Transaction Coordinator
依存关系:Remote Procedure Call(RPC)和Security Accounts Manager 
建议:一般家用计算机涉及不到,除非你启用Message Queuing服务,可以停止。
解决办法:

        1. 在windows控制面版-->管理工具-->服务-->Distributed Transaction Coordinator-->属性-->启动
        2. 在CMD下运行"net start msdtc"开启服务后正常。
注:如果在第1步Distributed Transaction Coordinator 无法启动,则是因为丢失了日志文件,重新创建日志文件,再启动就行了。重新创建 MSDTC 日志,并重新启动服务的步骤如下:
(1) 单击"开始",单击"运行",输入 cmd 后按"确定"。
(2) 输入:msdtc -resetlog (注意运行此命令时,不要执行挂起的事务)
(3) 最后输入:net start msdtc 回车,搞定!

 

在“服务”里找到这三个服务,都启动就行了

Distributed Transaction Coordinator

Remote Procedure Call (RPC)

Security Accounts Manager

dtc的启动经常会遇到问题,有以下解决办法:

1. 直接运行msdtc -resetlog

2. A.在命令行下运行 msdtc -uninstall,删除了 msdtc(Distributed Transaction Coordinator)服务

   B.在“本地连接”的属性中删除了 NetBIOS 协议
   C.重新启动机器后,在命令行下运行 msdtc -install,安装 msdtc 服务。
   D.在数据库服务器上,在“组件服务”mmc中,依次打开“组件服务”、“计算机”,在“我的电脑”上点右键选择“属性”。      然后选择“msdtc”选项卡中的“安全配置”,确认选中“网络 DTC 访问”,并选择“不要求进行验证”。

 

备注:如果是两台机器,一台机器本地VS调试,一台机器是数据库所在的机器 , 那么这两台机器都需要启用MSDTC 及相关配制。

      配制操作: 管理工具--> 组件管理-->组件服务-->计算机-->我的电脑-->Distributed Transaction Coordinator-->本地DTC-->右键选择属性-->安全选项卡中选中“网络 DTC 访问”,"允许入站,出站",“选中客户端和管理两个选项”,并选择“不要求进行验证” 和“选中启用XA事务和启用SNA LU 6.2 事务 ”。 

 

 

本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/bobwu/archive/2009/07/30/4392616.aspx

转载于:https://my.oschina.net/guanxinsui/blog/968082

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值