如何以最小的镜像数据库停机时间在系统上安装 Service Pack
本主题说明如何在安装 Service Pack 和修补程序时最大限度地缩短镜像数据库的停机时间。 这一过程包含依次升级参加数据库镜像的 Microsoft SQL Server 2005 的实例。 这种形式的升级(称为“滚动升级”**)可将停机时间缩短至一次故障转移所用的时间。 请注意,镜像服务器与主体服务器地理位置相距非常远的高性能模式会话可能不适合进行滚动升级。
滚动升级为一个多阶段过程,由以下阶段组成:
- 保护数据。
- 如果会话包含见证服务器,则建议您删除见证服务器。 否则,在升级镜像服务器实例时,数据库可用性将取决于仍与主体服务器实例保持连接的见证服务器。 删除见证服务器后,可在滚动升级进程中的任何时间升级镜像服务器实例,而无需承担数据库停机的风险。
注意: 有关详细信息,请参阅仲裁:见证服务器如何影响数据库可用性。 - 如果会话在高性能模式下运行,请将运行模式更改为高安全模式。
- 升级数据库镜像所涉及的每个服务器实例。 滚动升级包括以下操作:升级当前作为镜像服务器的服务器实例、手动故障转移服务器实例的每个镜像数据库以及升级起初作为主体服务器(现在作为新的镜像服务器)的服务器实例。 此时,必须恢复镜像操作。
注意: 在开始滚动升级之前,建议您至少对镜像会话之一执行一次手动故障转移练习。 - 恢复到高性能模式(如果需要)。
- 将见证服务器重新加入到镜像会话中(如果需要)。
下面说明了上述阶段的操作过程。
重要提示: |
---|
服务器实例可能会在并发的镜像会话中执行不同的镜像角色(主体服务器、镜像服务器或见证服务器)。 在这种情况下,您必须相应地调整基本的滚动升级进程。 有关详细信息,请参阅数据库镜像会话。 |
进行升级之前保护数据(最佳方法)
对每个主体数据库执行一次完整数据库备份。
备份数据库
对每个主体数据库运行 DBCC CHECKDB 命令。
从会话中删除见证服务器
如果镜像会话包含见证服务器,建议您在执行滚动升级之前删除该见证服务器。
删除见证服务器
将会话从高性能模式更改为高安全模式
如果镜像会话在高性能模式下运行,在执行滚动升级之前,请将运行模式更改为不带自动故障转移功能的高安全模式。 使用下列方法之一:
- 在 SQL Server Management Studio 中:通过**“数据库属性”对话框的“镜像”页将“运行模式”选项更改为“不带故障转移功能的高安全(同步)”**。 有关如何访问此页的信息,请参阅如何启动配置数据库镜像安全向导 (SQL Server Management Studio)
- 在 Transact-SQL 中:将事务安全设置为 FULL。 有关详细信息,请参阅如何更改数据库镜像会话中的事务安全 (Transact-SQL)。
注意: 有关详细信息,请参阅 Transact-SQL 设置和数据库镜像运行模式。
执行滚动升级
为了最大限度地缩短停机时间,建议您:通过更新在其所有镜像会话中当前作为镜像服务器的任何镜像伙伴来启动滚动升级。 此时可能必须更新多个服务器实例。
注意: 见证服务器可在滚动升级过程的任何时间进行升级。 例如,如果一个服务器实例在会话 1 中为镜像服务器,在会话 2 中为见证服务器,则可立即升级该服务器实例。 首先升级的服务器实例由镜像会话的当前配置决定,即:
- 如果某个服务器实例在其所有镜像会话中已是镜像服务器,则在该服务器实例上安装 Service Pack 或修补程序。
- 如果所有服务器实例当前在任何镜像会话中均为主体服务器,则选择一个要首先升级的服务器实例。 然后,手动故障转移其每个主体数据库并安装 Service Pack 或修补程序以升级该服务器实例。
升级完成后,服务器实例将自动重新加入它的每个镜像会话。
执行手动故障转移
有关手动故障转移如何工作的信息,请参阅手动故障转移。
对于已升级其镜像服务器实例的每个镜像会话,请等待会话进行同步。 然后连接至主体服务器实例并手动故障转移会话。 进行故障转移时,已升级的服务器实例成为该会话的主体服务器,原来的主体服务器成为镜像服务器。
此步骤的目的是使另一个服务器实例在其作为镜像伙伴的每一个镜像会话中成为镜像服务器。
在故障转移完成之后,建议您对主体数据库运行 DBCC CHECKDB 命令。
将 Service Pack 或修补程序安装到在自己充当伙伴的所有镜像会话中现在作为镜像服务器的服务器实例上。 此时可能必须升级多个服务器。
重要提示: 在复杂的镜像配置中,某些服务器实例可能会在一个或多个镜像会话中仍然充当原来的主体服务器。 请对这些服务器实例重复步骤 2–4,直到升级了所有涉及的实例。 恢复镜像会话。
注意: 只有升级了见证服务器,才能进行自动故障转移。 将 Service pack 或修补程序安装到在其所有镜像会话中作为见证服务器的任何其余服务器实例上。 在已升级的见证服务器重新加入镜像会话之后,即可再次启用自动故障转移。 此时可能必须升级多个服务器。
将会话恢复为高性能模式
(可选)通过使用以下方法之一恢复为高性能模式:
- 在 SQL Server Management Studio 中:通过**“数据库属性”对话框的镜像页将“运行模式”选项更改为“高性能(异步)”**。
- 在 Transact-SQL中:使用 ALTER DATABASE 将事务安全设置为 OFF。
将见证服务器恢复到镜像会话中
(可选)在高安全模式下,将见证服务器重新建立到每个镜像会话中。
恢复见证服务器
请参阅
任务
如何启动数据库镜像监视器
如何查看镜像数据库的状态 (SQL Server Management Studio)
概念
异步数据库镜像(高性能模式)
数据库镜像会话
强制服务(可能造成数据丢失)
数据库镜像概述
数据库镜像会话期间的角色切换
同步数据库镜像(高安全性模式)
其他资源
ALTER DATABASE (Transact-SQL)
BACKUP (Transact-SQL)
数据库镜像帮助主题