使可用性组脱机 (SQL Server)

本主题介绍如何在 SQL Server 2012 SP1 及更高版本中使用 Transact-SQL 将 AlwaysOn 可用性组从 ONLINE 状态升级到 OFFLINE 状态。 对于同步提交数据库没有数据丢失,因为如果任何同步提交副本未同步,OFFLINE 操作将引发错误并且保持可用性组处于 ONLINE 状态。 保持可用性组处于联机状态将保护未同步的同步提交数据库,以防可能的数据丢失。 可用性组脱机后,其数据库将不可用于客户端,并且您无法使可用性组重新联机。 因此,使某一可用性组处于脱机状态只会将该可用性组的资源从一个 WSFC 群集迁移到另一个 WSFC 群集。

在跨群集迁移Always On可用性组期间,如果任何应用程序直接连接到可用性组的主副本 (replica) ,则必须使可用性组脱机。 跨群集迁移Always On可用性组支持在可用性组停机时间最短的情况下进行 OS 升级。 典型方案是使用跨群集迁移Always On可用性组,将 OS 升级到 Windows 8 或 Windows Server 2012。 有关详细信息,请参阅针对操作系统升级的 AlwaysOn 可用性组的跨群集迁移

开始之前

注意

仅将 OFFLINE 选项用于可用性组资源的跨群集迁移。

先决条件

  • 在其中输入 OFFLINE 命令的服务器实例必须运行SQL Server 2012 SP1 或更高版本 (Enterprise 版或更高版本) 。

  • 可用性组当前必须处于联机状态。

建议

在您使可用性组脱机之前,删除可用性组侦听器。 有关详细信息,请参阅删除可用性组侦听程序 (SQL Server)

安全性

权限

对可用性组要求 ALTER AVAILABILITY GROUP 权限、CONTROL AVAILABILITY GROUP 权限、ALTER ANY AVAILABILITY GROUP 权限或 CONTROL SERVER 权限。

“使用 Transact-SQL”

使可用性组脱机

  1. 连接到为可用性组承载可用性副本的服务器实例。 此副本可以是主副本或辅助副本。

  2. 按如下所示使用 ALTER AVAILABILITY GROUP 语句:

    ALTER AVAILABILITY GROUP group_name OFFLINE

    其中, group_name 是可用性组的名称。

示例

下面的示例将 AccountsAG 可用性组脱机。

ALTER AVAILABILITY GROUP AccountsAG OFFLINE;  

跟进:在可用性组处于脱机状态后

  • OFFLINE 操作的日志记录:启动了 OFFLINE 操作的 WSFC 节点的标识存储于 WSFC 群集日志和 SQL ERRORLOG 中。

  • 如果你在使可用性组脱机之前未删除该可用性组侦听程序:如果要将该可用性组迁移到其他 WSFC 群集,请删除该侦听程序的 VNN 和 VIP。 你可以通过使用故障转移群集管理控制台、 Remove-ClusterResource PowerShell cmdlet 或 cluster.exe删除侦听程序的 VNN 和 VIP。 请注意,在 Windows 8 上不推荐使用 cluster.exe。

Related Tasks

相关内容

另请参阅

AlwaysOn 可用性组 (SQL Server)