与底层事务管理器的通信失败.MSDTC

时间:2017-02-08 14:10:43

标签: windows-server-2008-r2 msdtc netbios

我有两个系统,一个是我的应用程序安装在其中的Windows 7企业版,我是Windows server 2008 R Sp1机器,其中数据库是intsllaed。

使用基础事务管理器访问数据库通信时出现以下错误失败。由于通信问题,MSDTC事务管理器无法从源事务管理器中提取事务。可能的原因是:存在防火墙且MSDTC进程没有例外,两台计算机无法通过其NetBIOS名称找到对方,或者两个事务管理器之一未启用对网络事务的支持。

我已经启用了所需的MSDTC以及入站和出站绑定请求,并且没有设置身份验证。

两个系统都在同一个域中。

从Windows Server 2008 R2机器我可以按名称ping到Windows 7,反之亦然。

尝试从域控制器计算机中修复Windows server 2008 R2计算机并失败。

在某些地方读取两台服务器之间的Trasactions应该设置MSDTC并测试这些设置DTCPing工具是avaialble.got运行时失败

尝试从Windows Server 2007计算机ping到Windows Server 2008 R2时的DTCPing工具,因为它无法通过netbios名称找到它

1 个答案:

答案 0 :(得分:1)

我有同样的问题赢得了我的win10机器。请检查以下步骤:

服务=>分布式事务处理协调器正在运行

组件服务=>本地DTC =>属性=>检查是否允许入站和出站。我有以下设置: Local DTc

组件服务=>我的电脑=>属性=>默认协议=> TCP / IP已配置端口范围5000-5100。

port range 5000-5100

Windows防火墙=>通过Windows防火墙允许应用或功能=>分布式事务协调器

Distributed Transaction Coordinator

如果未设置threee复选框,则可以使用以下命令

执行此操作
netsh advfirewall firewall set rule name="Distributed Transaction Coordinator (TCP-In)" new enable=yes profile="domain,private,public"
netsh advfirewall firewall set rule name="Distributed Transaction Coordinator (TCP-Out)" new enable=yes profile="domain,private,public"
netsh advfirewall firewall set rule name="Distributed Transaction Coordinator (RPC)" new enable=yes profile="domain,private,public"
netsh advfirewall firewall set rule name="Distributed Transaction Coordinator (RPC-EPMAP)" new enable=yes profile="domain,private,public"
netsh advfirewall firewall set rule name="Distributed Transaction Coordinator (TCP-In)" new enable=yes profile="domain,private,public"
netsh advfirewall firewall set rule name="Distributed Transaction Coordinator (TCP-Out)" new enable=yes profile="domain,private,public"
netsh advfirewall firewall set rule name="Distributed Transaction Coordinator (RPC)" new enable=yes profile="domain,private,public"
netsh advfirewall firewall set rule name="Distributed Transaction Coordinator (RPC-EPMAP)" new enable=yes profile="domain,private,public"