我想在不同的服务器上恢复复制的数据库并从那里恢复复制。我有分销商和订户在同一台服务器上运行。当我在不同的服务器上恢复我的复制数据库时,我不想重新初始化订阅。
我知道我可以通过手动初始化设置复制,但在这种情况下,尚未传输到分发器并备份的数据将不会被复制。我也想复制这些数据。
我想在不同的服务器上恢复复制的数据库并从那里恢复复制。我有分销商和订户在同一台服务器上运行。当我在不同的服务器上恢复我的复制数据库时,我不想重新初始化订阅。
我知道我可以通过手动初始化设置复制,但在这种情况下,尚未传输到分发器并备份的数据将不会被复制。我也想复制这些数据。
如果将复制数据库的备份还原到另一个服务器或数据库,则无法保留复制设置。还原到新位置后,您必须重新创建发布和订阅。BOL 链接。
您必须按照以下步骤从 DR 环境恢复复制:
如果发布数据库上未设置同步备份选项,请执行 sp_replicationdboption '', 'sync with backup', 'true'。有关详细信息,请参阅 sp_replicationdboption (Transact-SQL)。
为发布数据库配置日志传送。有关更多信息,请参阅日志传送部署。
如果 Publisher 失败,则使用 RESTORE LOG 的 KEEP_REPLICATION 选项将数据库的最后一个日志恢复到辅助服务器。这将保留数据库的所有复制设置。有关详细信息,请参阅故障转移到日志传送辅助节点和 RESTORE (Transact-SQL)。
将 msdb 数据库和 master 数据库从主数据库还原到辅助数据库。有关详细信息,请参阅还原模型和 msdb 数据库的注意事项和还原主数据库的注意事项。如果主服务器也是分发服务器,请将分发数据库从主服务器还原到辅助服务器。
这些数据库在复制配置和设置方面必须与主数据库中的发布数据库一致。
在辅助服务器上,重命名计算机,然后重命名 Microsoft SQL Server 实例以匹配主服务器名称。有关重命名计算机的信息,请参阅 Windows 文档。有关重命名服务器的信息,请参阅如何:重命名承载 SQL Server 独立实例的计算机和如何:重命名 SQL Server 故障转移群集实例。
在辅助服务器上,还原从主服务器备份的服务主密钥。有关详细信息,请参阅恢复服务主密钥 (Transact-SQL)。