首页 新闻 会员 周边

SQLServer:用了三台虚拟机做复制的测试,上来就遇到了问题

0
[已关闭问题] 关闭于 2012-03-03 14:35

我先是装了一台虚拟机Win2003, 然后 重命名为 Win2003MSSQL05A

然后装上 SQL Server2005 打上SQLServer SP4 RTM 补丁

 

然后用虚拟机完整 克隆 两台,把计算机名 分别命名为 

Win2003MSSQL05B、Win2003MSSQL05C

 

然后重启

分别在三台 SQLServer 上 新建一个名为Test 的数据库,做复制的实验

 

现在开始做复制配置

把 Win2003MSSQL05A 配置为 发布服务器

 

然后把 Win2003MSSQL05B 配置为 订阅服务器,这时候开始报错:

 

 

 

也就是说,我更改了计算机名称,而SQLServer 里面仍然记录的是老的计算机名称

怎么修改呢????

fun5的主页 fun5 | 初学一级 | 园豆:4
提问于:2012-03-03 14:23
< >
分享
所有回答(1)
0

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

 解决办法:

1、  查看计算机名

use master 
   go 
    select @@servername
   select serverproperty('servername')

输出结果如图:

 

 

前后计算机名称不一致,说明计算机被修改过名称

 

2、修复问题,使用命令语句

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

3、 重启数据库服务

 

4、  查看修复后的计算机名

   use master 
   go 
    select @@servername
   select serverproperty('servername')

 

5、 说明修复成功,运行订阅,成功!!!

fun5 | 园豆:4 (初学一级) | 2012-03-03 14:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册