交换主日志传送服务器和辅助日志传送服务器的角色 (SQL Server)
适用范围:SQL Server
在将 SQL Server 日志传送配置故障转移到辅助服务器后,可以将辅助数据库配置为主数据库。 然后,就可以根据需要交换主数据库和辅助数据库。
执行初始角色交换
当初次将故障转移到辅助数据库并将其用作新的主数据库时,必须执行一系列步骤。 按照这些初始步骤操作后,就可以轻松地交换主数据库和辅助数据库的角色。
手动从主数据库故障转移到辅助数据库。 请确保用 NORECOVERY 备份主服务器上的活动事务日志。 有关详细信息,请参阅故障转移到日志传送辅助服务器 (SQL Server)。
禁用原始主服务器上的日志传送备份作业以及原始辅助服务器上的复制和还原作业。
使用 SQL Server Management Studio 在辅助数据库(要用作新的主数据库的数据库)上配置日志传送。 有关详细信息,请参阅配置日志传送 (SQL Server)。 包括下列步骤:
使用同一个共享来创建为原来的主服务器所创建的备份。
添加辅助数据库时,在 “辅助数据库设置” 对话框的 “辅助数据库” 框中输入原来的主数据库的名称。
在 “辅助数据库设置” 对话框中,选中 “否,辅助数据库已初始化”。
如果对于您之前的日志传送配置启用了日志传送监视,则重新配置日志传送监视以便监视新的日志传送配置。 将 threshold_alert_enabled 设置为 1 指定在超过 restore_threshold 时将引发警报。 执行以下命令,将 database_name 替换为你的数据库的名称:
在新的主服务器上
执行以下 Transact-SQL 语句:
-- Statement to execute on the new primary server USE msdb GO EXEC master.dbo.sp_change_log_shipping_secondary_database @secondary_database = N'database_name', @threshold_alert_enabled = 1; GO
在新的辅助服务器上
执行以下 Transact-SQL 语句:
-- Statement to execute on the new secondary server USE msdb GO EXEC master.dbo.sp_change_log_shipping_primary_database @database=N'database_name', @threshold_alert_enabled = 1; GO
交换角色
完成以上步骤执行初始角色交换后,就可以按照本节的下列步骤交换主数据库和辅助数据库的角色。 若要执行角色交换,请执行下列常规步骤:
使辅助数据库联机,用 NORECOVERY 备份主服务器上的事务日志。
禁用原始主服务器上的日志传送备份作业以及原始辅助服务器上的复制和还原作业。
在辅助服务器(新的主服务器)上启用日志传送备份作业,在主服务器(新的辅助服务器)上启用复制和还原作业。
重要
将辅助数据库更改为主数据库时,为了给用户和应用程序提供一致的体验,您可能需要在新的主服务器实例中为数据库重新创建部分或全部元数据(例如登录和作业)。 有关详细信息,请参阅当数据库在其他服务器实例上可用时管理元数据 (SQL Server)。