SqlServer链接服务器事务错误-该伙伴事务管理器已经禁止了它对远程/网络事务的支持

SqlServer的存储过程使用到了分布式事务的时候,需要开启MSDTC服务并且设置相应的安全设置设置

链接服务器开启 RPCRPC Out

检查双边的服务器是否开启了以下服务

sqlserver-linkserver-transaction-2018530165547

检查双边 打开’控制面板’->’管理工具’->’组件服务’,点开’组件服务’->’计算机’->’我的电脑’,然后展开“我的电脑”,找到

sqlserver-linkserver-transaction-2018530165757
右键属性 设置为如下
sqlserver-linkserver-transaction-201853016592

SET XACT_ABORT ON

另外 存储过程中 可以根据自己的需求来决定是否添加如下代码

SET XACT_ABORT ON

SET XACT_ABORT ON的作用分为两种:

总体作为一个事务,整体提交或整体回滚,格式为:

SET XACT_ABORT ON
BEGIN TRAN
    --要执行的语句
COMMIT TRAN
GO

每个语句作为一个事务,事务在错误行终止,错误行回滚,错误行之前的不回滚,格式为:

SET XACT_ABORT ON
BEGIN
    --要执行的语句
END
GO