且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

SQL Server复制需要有实际的服务器名称才能连接到服务器

更新时间:2021-08-20 02:31:28

SQL Server 2005/2008 配置 Transactional  Replication 过程中,出现如下异常信息。


异常信息: Replication.Utilities
——————————


SQL Server 复制需要有实际的服务器名称才能连接到服务器。不支持通过服务器别名、IP
地址或任何其他备用名称进行连接。请指定实际的服务器名称“xxxxxxx”。


SQL Server replication requires the actual server name to make a connection
to the server. Connections through a server alias, IP address, or any other
alternate name are not supported.


异常截图:


SQL Server复制需要有实际的服务器名称才能连接到服务器


解决办法:


1. 检查SQL Server 的服务器名称:


SELECT @@SERVERNAME


2.如果发现上述 SQL 查询得到的服务器名称和实际的计算机名称不符合,则需要进一步执行下面的脚步:


sp_dropserver
‘old_server_name’
GO
sp_addserver ‘current_computer_name’, ‘local’


此时,再次运行 SELECT @@SERVERNAME,可能获得 NULL值。重启SQLSERVER
服务,再次运行查询语句,将获得SERVER的真实名称。




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




出现错误
无法删除服务器 'LC04',因为该服务器用作复制过程中的发布服务器。 (Microsoft SQL Server,错误:
20582)


解决处理

select * from
msdb.dbo.MSdistpublishers
DELETE FROM msdb.dbo.MSdistpublishers
select *
from msdb.dbo.MSdistpublishers
exec sp_droplinkedsrvlogin 'LC04',null
exec
sp_dropserver 'LC04','droplogins'
exec sp_addserver 'MSSQLSERVER' , 'LOCAL'

重启SQLServer服务