我有一个从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.
答案 0 :(得分:1)
可能是权限或防火墙问题。
答案 1 :(得分:0)
您可以查看以下链接,看看是否有帮助:
答案 2 :(得分:0)
在链接服务器事务中,MSDTC尝试与DNS地址通信,而不是与服务器的IP地址通信。因此,有必要在服务器的主机文件中进行必要的配置。我花了很多时间,这就是我们想出的办法。