启用MSDTC时,分布式事务中没有事务处于活动状态错误消息

时间:2011-10-22 08:37:09

标签: sql-server sql-server-2000 sql-server-2008-r2

我有一个从server1到server2的链接服务器。 server1的

operating system: windows server2003 sp2
SQL server: SQL server 2008 R2

服务器2:

operating system: windows server2003 R2
SQL server: SQL server 2k Sp3
两台pc上都启用了

MSDTC,但是当我有这样的分布式事务时,我遇到以下错误:

set xact_abort on
begin distributed transaction
select * from linkedserver1.DbWorkshops.dbo.tbl_Workers
commit

错误讯息:

OLE DB provider "SQLNCLI10" for linked server "Linkedserver1" returned message "No transaction is active.".
Msg 7391, Level 16, State 2, Line 3
The operation could not be performed because OLE DB provider "SQLNCLI10" for linked server "Linkedserver1" was unable to begin a distributed transaction.

3 个答案:

答案 0 :(得分:1)

可能是权限或防火墙问题。

请参阅Troubleshooting MSDTC issues with the DTCPing tool

答案 1 :(得分:0)

答案 2 :(得分:0)

在链接服务器事务中,MSDTC尝试与DNS地址通信,而不是与服务器的IP地址通信。因此,有必要在服务器的主机文件中进行必要的配置。我花了很多时间,这就是我们想出的办法。