NPPYQ的学习笔记

每天进步一点点

导航

"新事务不能登记到指定的事务处理器中"异常的处理----MSDTC的正确配置

在做BizTalk项目的时候,BizTalk Server和Sql Server不在同一台计算机上,使用SQL适配器发送数据提示“新事务不能登记到指定的事务处理器中”的错误,同样的问题在添加SQL适配器元数据时也会提示“无法执行SQL语句。请确保提供的语法正确。新事务不能登记到指定的事务处理器中。”通常是BIZTALK服务器和SQLSERVER服务器双方某个MSDTC中的设置不当引起的.

 

以下为网上查找到的资料:

 

1.MSDTC是否正确启动.   察看dcomcnfg中察看msdtc的安全配置选项,保证双方都可以交互

 

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

    telnet   IP   135  

    如果是关闭的打开它.   

 

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

    如果Server之间跨网段,则Server之间需要能互相PING到机器名(而不是IP地址)。

    如果相互PING机器名有问题,修改system32/driver/etc目录下的hosts文件

 

4.升级MDAC到2.6以上

 

5.要安装操作系统最新补丁和SQL的最新补丁

 

6.如果windows2003(XP)开启了update服务,

   则检查注册表[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC]的键值TurnOffRpcSecurity是否为1,如果为0修改为1.

 

 

总结:

配置数据交换的时候,BIZTALK需要对SQLSERVER的服务器能启动MSDTC服务以进行数据的读写操作.

所以必须正确配置并启动该服务才能完成相关工作.

 

 

posted on 2008-09-10 10:53  NPPYQ  阅读(4919)  评论(1编辑  收藏  举报