使可用性组脱机 (SQL Server)

适用于SQL Server

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

在 Always On 可用性组的跨群集迁移过程中,如果任何应用程序直接连接到某一可用性组的主副本,则该可用性组必须置于脱机状态。 Always On 可用性组 的跨群集迁移支持用最短的可用性组停机时间进行操作系统升级。 典型的方案是将 Always On 可用性组 的跨群集迁移用于 SQL Server 2012 SP1 (11.0.3x) 和更高版本。 有关详细信息,请参阅 针对操作系统升级的 AlwaysOn 可用性组的跨群集迁移

注意

使用“脱机”选项,可跨群集迁移可用性组资源,或故障转移读取扩展可用性组。

先决条件

  • 您对其输入 OFFLINE 命令的服务器实例必须正在运行 SQL Server 2012 SP1 (11.0.3x) 或更高版本(Enterprise Edition 或更高)。
  • 可用性组当前必须处于联机状态。

建议

在您使可用性组脱机之前,删除可用性组侦听器。 有关详细信息,请参阅删除可用性组侦听程序 (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)