MSSQL server布满式事务解决方案

使用链接服务器进行远程数据库访问的情况,windows 2003,无法执行该操作,无法启动分布式事务

@provider=SQLNCLI,

数据库引擎和DTC解析服务器的法门不太肖似,上面分别说述

一、难点现象在奉行布满式事务时,在sql server 2006下收受如下错误:

@server=’ linkServerName ‘,

功用相似是把劳务器名对应到链接服务器的ip地址。

在sql server 2002下选拔如下错误:

EXEC sp_addlinkedserver

OLE DB 错误追踪[OLE/DB Provider ‘SQ英雄联盟EDB’
ITransactionJoin::JoinTransaction returned 0x8004d00a]。

xxx.xxx.xxx.xxx服务器名

EXEC sp_addlinkedserver

数据库:sql server 2000/sql server 2003

@server=’linkServerName’,

有多少个议程深入分析服务器名:

这种情状,@server
(linkServerName)便是要链接的sqlserver服务器名可能ip地址。

该操作未能进行,因为 OLE DB 提供程序 SQLOLEDB 不能够运营遍布式事务。

一是在sql
server客商端配置中设置二个小名,将地方的劳动器名对应到链接服务器的ip地址。

在sql server 二零零三下选用如下错误:

有多少个措施拆解剖析服务器名:

@server=linkServerName,

这种地方,@datasrc(sqlServerName)便是要链接的骨子里sqlserver服务器名或然ip地址。

假诺@server设置的是ip地址,同样无需做域名深入分析职业。

l第二种情景,访谈接口选“Microsoft OLE DB Provider Sql Server”或“Sql
Native Client”

@srvproduct = NSQL Server

无法施行该操作,因为链接服务器 “xxxxx” 的 OLE DB 访谈接口 “SQLNCLI”
无法运转分布式事务。

l在顾客端管住中选中“允许远程客商端”“允许远程管理”

=======================================================================

这种处境,@server 正是要链接的sqlserver服务器名或许ip地址。

@provider=’SQLNCLI’,

[OLE/DB provider returned message: 新职业不能够注册到钦点的思想政治工作微型机中。
]

先是种景况的@server可能第三种情况的@datasrc设置为sql
server服务器名时,必要做名称深入分析,就是把服务器名剖判为ip地址。

6.2DTC不管哪一类状态,只要@server设置的是劳务器名并不是ip地址,就要求举办名称剖判,办法同地点第三种办法,在hosts文件中加进拆解深入分析记录,上边的首先种方式对DTC不起成效。

骨子里在装置MSDTC安全这某个,允许远程顾客端那么些能够不勾选,但最首要的是上边那一步,在事务管理通信中选“允许入站”“允许出站”“不需要开展认证”,在windows二〇〇三中默许的是选的率先项须要对两端张开表明,作者遇见的情况,把这些改正来就不会再报错了。其它上面的十二分登陆客商只可以用非常network
service,用别的在sqlserver里就能说msdtc不可用。

l第一种情状,成品选”sql server”

l在事务处理通信中选“允许入站”“允许出站”“不必要进行求证”

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

  1. 保证链接服务器中语句未有访问发起事务服务器的操作
    在倡议事务的服务器施行链接服务器上的查询、视图或存款和储蓄进程中包括访谈发起事务服务器的操作,那样的操作叫做环回(loopback),是不被扶助的,所以要有限支撑在链接服务器中海市蜃楼这里类操作。

  2. 在业务最早前行入set xact_abort ON语句
    对此大多数 OLE DB 提供程序(包涵 SQL
    Server),必需将隐式或展现事务中的数据校正语句中的 XACT_ABORT 设置为
    ON。独一无需该选取的情状是在提供程序协理嵌套事务时。

  3. MSDTC设置
    开辟“管理工具――组件服务”,以此张开“组件服务――Computer”,在“我的计算机”上点击右键。在MSDTC选项卡中,点击“安全布署”按键。

4.在作业早前前行入set xact_abort ON语句对于绝大超级多 OLE DB
提供程序,必得将隐式或出示事务中的数据订正语句中的 XACT_ABORT 设置为
ON。唯一无需该接受的情况是在提供程序协理嵌套事务时。

讲究最早的小说作:本文转载自

适用条件

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

二是在“C:/WINDOWS/system32/drivers/etc/hosts”文件中加进一条记下:

EXEC sp_addlinkedserver

3.保证链接服务器中语句未有访谈发起事务服务器的操作在提倡事务的服务器试行链接服务器上的询问、视图或存款和储蓄进程中包括访问发起事务服务器的操作,那样的操作叫做环回,是不被扶植的,所以要保管在链接服务器中不设有此类操作。

消息 7391,级别 16,状态 2,过程 xxxxx,第 16 行

运用链接服务器实行远程数据库访谈的图景

  1. 两个运转MSDTC服务(运行形式:允许net start msdtc命令)
    MSDTC服务提供布满式事务服务,假若要在数据库中央银行使遍及式事务,必须在参加的两岸服务器运转MSDTC(Distributed
    Transaction Coordinator)服务。

  2. 开拓双边135端口(展开药方式:运营相应的服务就可以)
    MSDTC服务信赖于RPC(Remote Procedure Call
    (RPC卡塔尔(قطر‎)服务,RPC使用135端口,有限支撑RPC服务运营,要是服务器有防火墙,保障135端口不被防火墙挡住。

@srvproduct=,

@srvproduct=”,