问题描述
首先,我有两台机器,都安装了slqserver2008数据库,一台机器使用的是windows2008系统,一台是win7系统。目前这两台机器在同一个局域网下。我用第三台机器做事务提交,分别同步操作这两个数据库,使用TransactionScope进行事务处理。如果我第三台机器,与前两台机器在同一个局域网内,是完全没有问题的,但是第三台机器跨域操作,就会提示:“与基础事务的管理器通讯失败”这样的错误。关于防火墙、端口、dtc服务、组件服务,我都进行了配置,而且是同时在三台机器上,却仍然有这个问题出现。我看网上有帖子说要建立机器间的可信连接,我也对应修改了C:WINDOWSsystem32driversetchosts和C:WINDOWSsystem32driversetclmhosts.sam两个文件。机器A(主机名):windows2008机器B:win7机器C:win7机器Ahosts与lmhosts.sam文件配置:192.168.1.210机器A192.168.1.201机器B221.196.246.11机器C机器Bhosts与lmhosts.sam文件配置192.168.1.210机器A192.168.1.201机器B221.196.246.11机器C机器Chosts与lmhosts.sam文件配置111.160.183.2机器A111.160.183.2机器B192.168.1.50机器C以上配置还是无效,请高手帮忙看看,那里有问题。
解决方案
解决方案二:
补充说明:前两台机器的外网是固定IP,第三台机器外网不是固定IP
解决方案三:
没有人回吗,好郁闷
解决方案四:
TransactionScope用的不是数据库,是另一个服务
解决方案五:
忽略上面的,你这个是跨域的……
解决方案六:
这两篇里有提到远程,但不知道能不能解决你的问题
解决方案七:
TransactionScope跨服务器,介个不好使~换种思路嘛,A、B在同一个局域网,可以在A上做链接服务器到B,程序统一使用A这个入口,从A操作B。
解决方案八:
引用6楼lovelj2012的回复:
TransactionScope跨服务器,介个不好使~换种思路嘛,A、B在同一个局域网,可以在A上做链接服务器到B,程序统一使用A这个入口,从A操作B。
之前就是这样用的,因为存在很多的弊端,不能要求程序统一从A进入,所以才想用事务解决。
解决方案九:
引用5楼starfd的回复:
这两篇里有提到远程,但不知道能不能解决你的问题
你发的这两个链接我都试过了,行不通