修改sqlserver名字是存在distributor该如何

修改sqlserver名字是存在distributor该如何

 

前些日子,公司服务器硬盘直接挂了,后来为了保证所以数据尽量不丢失,所以采取了replication技术(这个在另一篇博文《关于replication》)。

 

公司服务器都是虚拟的,所以要创建多一个都是copy自其它服务器。这就会产生一个麻烦,sqlserver的名字和distributor都还是之前服务器的。所以必须rename和删除distributor。

 

起初,我以为删除旧的sqlserver名字,重新命名就可以做replication。例如执行如下代码:

 

select @@servername 

sp_dropserver 'win-tb64seu3p19'

go
sp_addserver 'win-tb64seu3p84','local'
go

 

 

但是当我做replication的时候一直都提示我没发成功,因为不存在“win-tb64seu3p84”。后来找资料才发现

有一个distributor的实例必须要删除,否则不会成功。

 

因此正确的步骤是:

 

select @@servername 

exec sp_dropdistributor @no_checks = 1--需要的时间会长点,耐心等待,当时我就是不够耐心,所以又重新来过一次
sp_dropserver 'win-tb64seu3p19'

    go
sp_addserver 'win-tb64seu3p84','local'
go

 

 

因为起初的这个问题弄得我又接近通宵(三个服务器)

 

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐