对【SQL SERVER 分布式事务解决方案】的心得补充

常常要通过存储过程修改链接数据库中的数据,需要在源数据库服务器和目标数据库服务器上配置分布式事务,配置过程比较繁琐,分布式事务出现问题既有操作系统的原因也有SQL SERVER的原因。读了《sql server分布式事务解决方案》一文以后,我感觉基本上已经形成了一套标准化的配置步骤,但第6节中没有提到当SQL Server的名称和计算机名不一致时应该采取的措施。

 

对于全新安装的机器,按照中文文档的要点配置,应该不会有什么问题。如果按以上配置还有问题,参考英文文档,很可能是安装SQL SERVER以后修改过计算机名(网络名),导致SQL Server的名称和计算机名不一致。

-- 查询SQL SERVER名称
SELECT  @@SERVERNAME

最好先在服务器上相互ping以下对方计算机名,看看返回的IP地址对不对,防止网络上计算机重名。如果计算机名解析IP地址无误,那么就按计算机名来修改SQL SERVER名称。

-- SQL SERVER 2005 修改服务器名
sp_dropserver  <old_name\instancename >
GO
sp_addserver  <new_name\instancename >, local
GO

-- SQL SERVER 2000 修改服务器名
use master 
go
sp_configure   ' allow up ', 1 
RECONFIGURE   WITH  OVERRIDE 
GO 
update  sysservers   set  srvname =<new_name >  where srvid = 0
update  sysservers   set  datasource =<IP >  where srvid = 1
go 
sp_configure   ' allow up ', 0 
RECONFIGURE   WITH  OVERRIDE 
GO

 

中文参考文档:sql server分布式事务解决方案

英文参考文档:How to troubleshoot error 7391 that occurs when you use a linked server in SQL Server

 

转载于:https://www.cnblogs.com/cancelpj/archive/2012/01/04/2266223.html

你可能感兴趣的:(对【SQL SERVER 分布式事务解决方案】的心得补充)