我们已经将我们的数据库从sql2000 win server 2k迁移到sql2008 win server 2k8。 我们已经连接了sql2000 win server 2k的服务器。 我们认为问题在于DTC,我们为解决问题做了很多设定,但问题依然存在。 在SQL日志和win事件查看器中没有任何错误或者任何信息或信息。 应用程序正在外挂,并显示超时exception。
到目前为止我们所做的是:
我们注意到,当我们重新启动SQL服务并为我们的事务进行第一次尝试时,会显示以下内容:“试图初始化Microsoft分布式事务处理协调器(MS DTC),这只是一个信息性消息,不需要用户操作。 之后:“恢复涉及Microsoft分布式事务处理协调器(MS DTC)的任何有问题的分布式事务已经完成,这只是一条信息性消息,不需要用户操作。
有人知道为了解决这个问题还有什么可以做的吗?
提前致谢。
问候,Snezana
尝试在两台服务器上使用SQL Server Profiler运行跟踪,同时尝试在导致超时的应用程序中执行操作。 当超时发生时,这将显示你机器上发生了什么。
记住在这个过程中保持开放的态度。 我知道你说过你认为DTC是造成这个问题的原因,但根据我的经验,DTC通常不会造成超时。 它可以工作,也可以不工作,当它没有正确configuration时抛出的错误说DTC不能启动事务。 我所看到的链接服务器问题通常涉及到未完成的远程查询或需要将大量数据发送到调用服务器的远程查询。
是的,你是对的,然后运行分析器,但没有注意到一些改进,因为我被redirect,我的脑海里,问题是链接服务器。
问题是一个僵局,我对每个人都有超时的build议是首先检查发生死锁。
谢谢。
我还没有尝试过你的组合。 但是这里有一些你可以尝试的东西:
您也可以在testing时查看MSDTC监视器。 这样你会看到交易是否正在创build,然后中止,或根本没有创build。
这两台机器在同一个子网上吗? 我永远不能让DTC在路由器,防火墙或者不是的情况下工作。
要debugging,请尝试使用微软的DTCPing和DTCTester(谷歌为它)。
有时在更改DTC设置时需要重启,即使系统没有这样说。