The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction
2018-04-12 22:06 潇湘隐者 阅读(1181) 评论(0) 编辑 收藏 举报今天遇到一起关于分布式事务错误的案例,如下所示,执行SQL脚本时报错, 错误信息具体如下所示:
[OLE/DB provider returned message: 新事务不能登记到指定的事务处理器中。 ]
OLE DB error trace [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a].
Msg 7391, Level 16, State 1, Procedure UpdatePermissionSystem, Line 18
The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction.
检查了数据库选项以及DTC配置,最后发现是“事务管理器通信”的选项没有选择“不要求进行验证(No Authentication Required)”,而是勾选了“要求相互进行身份验证(Mutual Authentication Required)”导致. 选择了“不要求进行验证” 后,重启DTC服务,即可解决这个错误。
扫描上面二维码关注我
如果你真心觉得文章写得不错,而且对你有所帮助,那就不妨帮忙“推荐"一下,您的“推荐”和”打赏“将是我最大的写作动力!
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接.