SQL Server 复制需要有实际的服务器名称才能连接到服务器。不支持通过服务器别名、IP 地址或任何其他备用名称进行连接。
报错
配置分发向导时,报错:
SQL Server 无法连接到服务器“MSSQL236”。SQL Server 复制需要有实际的服务器名称才能连接到服务器。不支持通过服务器别名、IP 地址或任何其他备用名称进行连接。请指定实际的服务器名称“WIN-K6S7L7U4O40”。 (Replication.Utilities)”
分析
若是修改过主机名的话,则容易出现这类问题。
参考:https://www.cnblogs.com/kerrycode/archive/2010/12/27/1918101.html
解决
解决方法:
从sys.sysservers 查看列 svrname 可以发现不是新的计算机名,问题就出在此处。
先用 sp_dropserver 删除服务器,语句:EXEC sp_dropserver '老计算机名'再用 sp_addserver 添加新的服务器,语句:EXEC SP_ADDSERVER '新计算机名','LOCAL'最后重启SQL SERVER 服务,问题解决。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | -- 分步查询 SELECT * FROM sys.sysservers; SELECT SERVERPROPERTY('servername') ,@@SERVERNAME ; sp_helpserver; EXEC SP_DROPSERVER 'WIN-K6S7L7U4O40'; GO EXEC SP_ADDSERVER 'MSSQL236'; GO -- 或用下面代码直接修改 IF SERVERPROPERTY('servername') <> @@SERVERNAME BEGIN DECLARE @Server SYSNAME SET @Server = @@SERVERNAME EXEC SP_DROPSERVER @server = @Server ; SET @Server = CAST(SERVERPROPERTY('servername') AS SYSNAME) EXEC SP_ADDSERVER @server = @server, @local = 'LOCAL' END |