SQL SERVER 20005 分布式事务配置

分布式事务是跨越两个或多个数据库的单个数据库引擎实例中的事务。简单举例比如有数据库服务器SERVER A,SERVER B   ,

在SERVER A 上的过程里面启用了事务,事务中更新SERVER B上的表。这就是分布式事务。

应用中 出错信息经常是:

无法启动链接服务器 "XXXX" 的 OLE DB 访问接口 "SQLNCLI" 的嵌套事务。

经过网上搜索和实践,解决此问题。要点如下:

 

1.过程中 事务开始前加上 SET XACT_ABORT ON,显示指示错误后回滚。

2.sql server 服务器设置 '允许远程访问'

3.建立链接服务器,RPC ,RPC OUT 设为'true'
4 开启MSDTC服务

打开“管理工具――组件服务”,依次打开“组件服务――计算机”,在“我的电脑”上点击右键。在MSDTC选项卡中,点击“安全配置”按钮。

在安全配置窗口中做如下设置:

l选中“网络DTC访问”

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

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

l保证DTC登陆账户为:NT   Authority\NetworkService


5.开启RPC端口

RPC 使用135端口,telnet IP 135 可进行测试。
6 host文件加入对方IP及机器名

10.0.0.1  Server B

使用dtcping 测试

微软官方下载地址 :   http://support.microsoft.com/kb/918331/

在SERVER B上运行DTCPING

到SERVER A 上运行DTCPING ,输入SERVER B 机器名(NETBIOS NAME) ,点PING,输出信息成功则MSCDTC可用

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值