基础提供程序在 Open 上失败。 ---> System.Transactions.TransactionManagerCommunicationException: 与基础事务管理器的通信失败。 ---> System.Runtime.InteropServices.COMException: 由于通信问题,MSDTC 事务管理器无法从源事务管理器提取事务。可能原因如下: 存在防火墙并且没有 MSDTC 进程的例外、两台计算机根据其 NetBIOS 名称无法找到彼此,或未对于两个事务管理器之一启用网络事务支持。 (异常来自 HRESULT:0x8004D02B)
排查防火墙问题,两台计算机的计算机名做了 HOST了,根据计算机名 Telnet 1433 和 135端口 可以互通,还有其他因素那个因素导致该问题发生呢,有人遇到过同样的问题吗,请帮忙下 感谢
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
遇到您描述的问题,通常涉及分布式事务协调(MSDTC)的配置和网络通信问题。您已经检查了防火墙设置、HOSTS文件以及端口连通性(1433为SQL Server默认端口,135为MSDTC使用的端口),这些都是正确的排查步骤。如果这些基本检查没有发现问题,可以尝试以下几个方面进一步排查:
MSDTC服务状态与配置:
Distributed Transaction Coordinator
服务都在运行状态。可以通过services.msc
查看并启动该服务。msdtc -resetlog
重置日志,然后使用msdtc -config
来查看或修改配置,确保“允许远程客户端”、“允许入站”、“允许出站”等选项被启用。网络配置:
安全设置:
系统更新与补丁:
事件查看器:
重新注册MSDTC:
net stop msdtc
msdtc -uninstall
msdtc -install
net start msdtc
如果以上步骤都无法解决问题,建议考虑寻求专业的技术支持或者在微软官方论坛、Stack Overflow等技术社区发帖求助,提供详细的错误信息和已尝试的解决步骤,以便获得更针对性的帮助。