- 打开“控制面板(Control Panel)―管理工具(Administrative Tools)―组件服务(Component Service)”(或者开始-运行 “Dcomcnfg.exe”)
- 打开“组件服务(Component Service)―计算机(Computers)”
- 在“我的电脑(My Computer)”上点击右键,点击“属性(Properties)”
- 在Local DTC Properties对话框中,点击“安全(Security)”选项卡。
-
在安全配置选项卡中做如下设置:
- 选中“网络DTC访问(Network DTC Access)”
- 在客户端管理(Client and Administration)中选中“允许远程客户端(Allow remote Clients)”和“允许远程管理(Allow Remote Administration)”
- 在事务管理通讯(Transaction Manager Communication)中选“允许入站(Allow Inbound)”“允许出站(Allow Outbound)”“不要求进行验证(No Authentication Required)”
- 保证DTC登陆账户为:NT Authority\Network Service
Windows XP, Windows Server 2003 MSDTC 配置:
- 打开“控制面板―管理工具―组件服务”(或者运行“Dcomcnfg.exe”)
- 打开“组件服务―计算机”
- 在“我的电脑”上点击右键,点击“属性”
- 在MSDTC选项卡中,点击“安全配置”按钮。
在安全配置窗口中做如下设置:
- 选中“网络DTC访问”
- 在客户端管理中选中“允许远程客户端”“允许远程管理”
- 在事务管理通讯中选“允许入站”“允许出站”“不要求进行验证”
- 保证DTC登陆账户为:NT Authority\Network Service
另重点
假设客户端电脑IP:10.0.56.110 计算机名称:abc
假设数据库电脑IP:192.168.102.188 计算机名称:abd
分别在两台电脑上ping对方机器IP(或计算机名称)看能否ping通 (如果无法ping通则后面配置无法成功)。
在确保ping通的情况下检查两台机器的DTC服务已启动(Distributed Transaction Coordinator)
文本文件方式打开abc电脑的hosts文件在里面添加如下配置并保存(hosts文件目录C:\Windows\System32\drivers\etc\)
192.168.102.188 abd
10.0.56.110 abc
文本文件方式打开abd电脑的hosts文件在里面添加如下配置并保存(hosts文件目录C:\Windows\System32\drivers\etc\)
192.168.102.188 abd
10.0.56.110 abc
保存后如果还是无法正常使用,就要检查防火墙是否有例外DTC 以及允许RPC 135端口 (或可先关闭防火墙待测试正常后,在启动防火墙将DTC设置例外)
通过分别 telnet 192.168.102.188 135 telnet 10.0.56.110 135 确保两台电脑135端口可正常访问
若telnet命令无效,可在控制面板-打开或关闭windows功能-勾选telnet客户端和服务器 并确定 成功后再执行上面的telnet命令确保135端口是否通畅。
上面是个人在配置数据库分布式事务时在网上查询到的配置资料和个人总结出来的,若还是无法配置成功,请接着Google