码迷,mamicode.com
首页 > 数据库 > 详细

因为链接服务器 "IP" 的 OLE DB 访问接口 "SQLNCLI" 无法启动分布式事务

时间:2015-07-17 14:19:41      阅读:327      评论:0      收藏:0      [点我收藏+]

标签:因为链接服务器 "ip" 的 ole db 访问接口 "sqlncli" 无法启动分布式事务

前言:A服务器和B服务器做好链接后,可以查询,但是用到Distributed Transaction就报错:


 未处理的“System.Exception”类型的异常出现在 mes.exe 中。

其他信息: System.Data.SqlClient.SqlException: 服务器 ‘YICHANGMES‘ 上的 MSDTC 不可用。
无法执行该操作,因为链接服务器 "" 的 OLE DB 访问接口 "SQLNCLI" 无法启动分布式事务 

根据网上步骤,添加host文件,设置msdtc还不是行

用DTCping工具测试看是否ping通,发现是可以的,但是有警告:

技术分享

经过查询

解决办法:属于一个.Net 2.0的Bug,打hotfix:ndp20-kb916002-x86

3. 现象:在使用DTC ping的时候会出现一个警告"Warning: the CID values for both test

machines are the same"


4. 现象:win 2000上不能启动分布式错误

原因:克隆的操作系统导致 解决:添加/删除


解决办法:打开注册表,HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC

修改以下两项:

AllowonlySecureRpcCalls=0

TurnoffRpcSecurity=1

这里没有修改注册表,重新装了系统!


因为服务器B是从服务器A克隆过来的,先是打补丁报错,直接就重新装了下系统,搞定!!!


总结:以后即使是测试服务器也不能偷懒了!


本文出自 “一凡” 博客,请务必保留此出处http://1336014.blog.51cto.com/1326014/1675592

因为链接服务器 "IP" 的 OLE DB 访问接口 "SQLNCLI" 无法启动分布式事务

标签:因为链接服务器 "ip" 的 ole db 访问接口 "sqlncli" 无法启动分布式事务

原文地址:http://1336014.blog.51cto.com/1326014/1675592

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!