六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 87|回复: 0

“服务器 '×××' 上的 MSDTC 不可用”的解决方法

[复制链接]

升级  34.35%

547

主题

547

主题

547

主题

探花

Rank: 6Rank: 6

积分
1687
 楼主| 发表于 2013-2-5 09:04:56 | 显示全部楼层 |阅读模式
一. A.不用事务,关用SELECT  语句.是否可以分布式查询?  

    B.LINKSERVER  在做分布式更新事务时不能对本机操作.(就是不能环回分布式事务)  

    C.DBCC  TRACEON  (3604,  7300)--用跟踪看更详细错误信息.  

    D.下载MS提供的DTCPing.exe  分装在两台机上,按README说明来运行它.看出错信息.  
http://download.microsoft.com/download/complus/msdtc/1.7/nt45/en-us/DTCPing.exe  

二. 两台机的MSDTC是否都打开了.  

三. MSDTC设置是否正确.  
1.打开命令提示,运行"net  stop  msdtc",然后运行"net  start  msdtc"。  
2.转至"组件服务管理工具"。  
3.浏览至"启动管理工具"。  
4.选择"组件服务"。  
  a.展开"组件服务"树,然后展开"我的电脑"。  
  b.右键单击"我的电脑",然后选择"属性"。  
  C.在  MSDTC  选项卡中,确保选中了下列选项:网络 DTC  访问  
网络管理  
网络事务  
     XA  事务  
  e.另外,"DTC  登录帐户"一定要设置为"NT  Authority\NetworkService"。  
5.单击"确定"。这样将会提示您"MS  DTC  将会停止并重新启动。  
   所有的依赖服务将被停止。请按'是'继续"。单击"是"继续。  
6.单击"确定"关闭"我的电脑"属性窗口。  

四.  
MSDTC依赖于RPC,RPC使用的端口是135,测试135端口是否打开.是否有防火墙?如果有先关了防火墙.  
telnet  IP  135  
如果是关闭的打开它.  

五.  
有的机由于各种原因),SQLOLEDB不能使用分布式事务,更改为"MSDASQL"  的ODBC方式联接.  
使用RRAS而不是RAS.(控制面版--管理工具--远程服务管理器)  
Check  whether  you  are  using  Remote  Access  Server  (RAS)  to  access  remote  servers.  If  so,  make  sure  that  you  have  implemented  Routing  RAS  (RRAS).  Linked  server  does  not  work  on  RAS  because  RAS  allows  only  one  way  communication.


六. 检查你的两台服务器是否在同一个域中.  
如果不在同一个域中,是否建立可信任联接.

七. 如果是WIN2000,升级到SP4

八. 升级MDAC到2.6以上,最好是2.8.

九. 要安装SQL的最新补丁:  sp4

http://www.microsoft.com/downloads/details.aspx?FamilyID=8e2dfc8d-c20e-4446-99a9-b7f0213f8bc5&DisplayLang=zh-cn


我的解决方法:net  stop  msdtc",然后运行"net  start  msdtc"开启服务后正常。
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表