目前,我们有一个从 SQL Server 2005 OLTP 发布者/分发者到两个订阅者的单向事务复制(一个是 SQL 2005,另一个是 SQL2008 R2)。复制安全性通过 SQL 代理的域服务帐户实现(所有盒子都使用同一个帐户)。
SQL2008R2 订阅者用于 BI 目的并托管一个数据库,该数据库具有生产发布者数据库表的子集,具有不同的安全性和索引。
我们需要将此 BI 用户迁移到具有性能更强大的硬件的较新设备中。
该计划如下:
停止复制到 BI 盒(继续复制到其他订阅者)。
备份BI盒上的所有数据库(包括系统数据库)。
将所有数据库(包括单用户模式下的主数据库)恢复到新的 BI 盒(已安装 SQL Server 2008R2)。
将旧的 BI 盒从网络上移除并将其关闭。
将新的 BI 盒重命名并重新 IP 化,使其与旧盒相同。
重命名 SQL(sp_dropserver 和 sp_addserver)。
重启盒子。
重新打开复制。
这种方法有什么缺陷吗?
答案1
我更喜欢在重命名后在新机器上安装 SQL,因为sp_dropserver
它sp_addserver
不会重命名 SQL 创建的本地组。无论如何:确保新机器的 SQL 版本与原始机器相同。