Rss & SiteMap

昂捷论坛 http://www.enjoyit.com.cn

中国零售业界精英论坛!
共1 条记录, 每页显示 15 条, 页签: [1]
[浏览完整版]

标题:在馈赠促销工作台,根据小票流水赠券,点击馈赠确定,进行审核时提示‘链接服务器card_srv的OLE DB 访问接口‘SQLNCLI无法启动分布式事务’的解决办法

1楼
long_it 发表于:2011/11/17 12:05:21

在测试馈赠促销工作台根据小票流水返券的时候,点击馈赠确定之后,再点击审核的时候,报错,错误大致内容为

   链接服务器card_srv的OLE DB 访问接口‘SQLNCLI无法启动分布式事务,

   链接服务器card_srv的OLE DB 访问接口‘SQLNCLI返回了消息'该事务管理器已经禁止了它对远程/网络事务的支持。'

经过在网上查询相关解决办法及同事们的帮助,终于将问题得以解决,解决方法在网上基本上都可以找到,但是都不是很全面,

现将解决办法汇总整理下,方便大家遇到类似的情况时进行配置

 

1、检查相关的服务器上是否有安装msdtc服务,我这边是门店服务器和卡中心的服务器, 如果没有安装的话,进行如下安装

①. 单击“开始”,指向“控制面板”,然后单击“添加/删除程序”。   

②. 单击“添加/删除 Windows 组件”。   

③. 选择“应用程序服务器”,然后单击“详细信息”。   

④. 选择“启用网络 DTC 访问”,然后单击“确定”。   

⑤. 单击“下一步”。   

⑥. 单击“完成”。   

⑦. 停止分布式事务协调器服务,然后重新予以启动。   

⑧. 停止参与分布式事务的任何资源管理器服务(如 Microsoft SQL Server 或 Microsoft Message Queue Server),然后重新予以启动。

 

2、如果机器上已经安装msdtc服务,检查MSDTC设置是否正确.   

①.打开命令提示,运行"net stop msdtc",然后运行"net start msdtc"。   

②.转至"控制面板-组件服务管理工具"。   

③.浏览至"启动管理工具"。   

④.选择"组件服务"。   

a.展开"组件服务"树,然后展开"我的电脑"。   

b.右键单击"我的电脑",然后选择"属性"。   

c.在 MSDTC 选项卡中,确保选中了下列选项(都要打勾):

 选中“网络DTC访问”    网络管理    网络事务    XA 事务

在客户端管理中选中“允许远程客户端”“允许远程管理”

在事务管理通讯中选“允许入站”“允许出站”“不要求进行验证”   

d.另外,"DTC 登录帐户"一定要设置为"NT Authority/NetworkService"。   

⑤.单击"确定"。这样将会提示您"MS DTC 将会停止并重新启动。    所有的依赖服务将被停止。请按'是'继续"。单击"是"继续。   

⑥.单击"确定"关闭"我的电脑"属性窗口。

 

3、禁用SQL Server 的DTC RPC安全,具体为在HKEY_LOCAL_MACHINE/Software/Microsoft/MSDTC下新建一个DWord键,名称为TurnOffRpcSecurity,设置其值为1 ,如果有的话,检查确认其值是否为1

 

4、通过查找,在C:找到名为“hosts”的文件(没有扩展名),

 通常路径为C:\WINDOWS\system32\drivers\etc,将对方服务器的IP和计算机对应起来,参考如下(我这边是门店服务器和卡中心服务器):
分店的hosts文件为--指向卡中心的服务器地址:

# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

127.0.0.1       localhost
192.168.0.17    cardmis

 

卡中心服务器的hosts文件配置为:--指向分店的服务器地址

# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

127.0.0.1       localhost
192.168.2.109   leader
192.168.1.103   server2003
192.168.8.109   GHLS-SRV
192.168.5.109   lyenjoy
192.168.7.109   misserver
192.168.10.109  zslserver

 

5、可以下载Dtcping.exe工具进行监测是否两个服务器之间的Dtc服务是否畅通

     Dtcping.exe 程序包中包含以下文本文件描述如何使用 DTCPing 工具:

     ①请参阅有关如何测试 RPC 通信和两台计算机之间的 MS DTC 通信的信息的 Readme.txt 文件。

     ②请参阅 HowtoAnalyze_Dtcping_Output.txt 文件如何获得 RPC 端口信息、 CID注册表项信息和其他 MS DTC 相关的信息有关的信息。

     上面4条如果全部配置没有问题的话,用Dtcping.exe工具检测是没有问题的


 

[此贴子已经被作者于2011-11-17 13:38:55编辑过]
共1 条记录, 每页显示 15 条, 页签: [1]

Copyright © 2006-2010 EnjoyIT.com.cn
网友言论或观点与昂捷公司无关!涉及版权/著作权问题请与发帖者直接联系
Powered By Dvbbs Version 8.2.0
Processed in 0.14063 s, 2 queries.