安装完sql server 2005后,修改了机器名后造成发布、订阅服务不能正常工作的解决方法!(转)

Monday, April 27, 2009

由于需要需要配置一个发布订阅,可是一直报告:" sql server 复制需要有实际的服务器名称才能连接到服务器,不支持通过别名、ip地址或其他任何备用名称进行连接。请指定实际的服务器名称 “xxxx”(Replication Utlities)。"

经过一番分析发现是在安装完sql server 后修改过机器名称,运行下面两条语句既可以看出来:

use master
go

select @@servername;
select serverproperty('servername')

如果这两个结果不一致,说明机器改过名字,在配置复制的时候就会报上面的错误。经过一番搜索。最终找到了邹老大的解决方案,给大家分享,同时备查,呵呵。

--要修复此问题
--执行下面的语句,完成后重新启动SQL服务

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

最后别忘了重新启动服务哦,启动完后,在运行:

use master
go

select @@servername;
select serverproperty('servername')

一切正常,复制也能用了!

同时我把原文的地址也弄过来吧,呵呵!题目:关于服务器名的问题:@@ServerName 竟然和 "SQLServer 注册" 不相同!连接地址:http://topic.csdn.net/t/20050326/12/3883164.html

reference:http://social.microsoft.com/Forums/zh-CN/sqlserverzhchs/thread/65a05e52-495c-4364-aeea-c9ab67febbf6/

Posted by Michael.Ding at 4:09 PM

0 comments:

Post a Comment