我目前正在将应用程序升级到SQL 2008 / Server 2008 R2 x64,并且我看到了一些我在SQL 2005 / Server 2003上没有看到的奇怪行为。随机我从MSDTC获得了一个例外:{{1} }。请注意,我已启用未经身份验证的网络事务,这些事务在95%的情况下都可以正常工作。但是有些人因为这个消息而失败了。如果它是相关的,那么它是一个SQLBulkCopy对象。
我已经调查了DTC统计数据,有趣的是当事务抛出此异常时,没有中止事务,但它确实记录了一个已完成的事务。真正令人感兴趣的是远程事务管理器还创建了一个新事务(提交状态)。作为事务的一部分,第二次写入成功写入数据库,但第一次写入不是。
在排序方面,当我看到此错误时,发生了以下情况:
我知道SQL和应用程序都已为远程事务配置了MSDTC,因为有些事务成功运行。知道为什么会这样,以及如何解决它?
答案 0 :(得分:8)
在实践中没有亲自见过这个,但发现了这个:
来自here:
- 确保选中“网络DTC访问”,“允许远程客户端”, “允许入站/出站”,“启用提示” (某些选项可能没有必要, 尝试获取您的配置)
- 服务将重启
- 但是如果它仍然无法工作,你可能需要重新启动你的服务器
醇>