Take an Availability Group Offline (SQL Server)
Topic Status: Some information in this topic is preview and subject to change in future releases. Preview information describes new features or changes to existing features in Microsoft SQL Server 2016 Community Technology Preview 2 (CTP2).
This topic describes how to take an AlwaysOn availability group from the ONLINE state to the OFFLINE state by using Transact-SQL in SQL Server 2012 SP1 and later versions. There is no data loss for synchronous-commit databases because if any synchronous-commit replica is not synchronized, the OFFLINE operation raises an error and leaves the availability group ONLINE. Keeping the availability group online protects unsynchronized synchronous-commit databases from possible data loss. After an availability group goes offline, its databases become unavailable to clients and you cannot bring the availability group back online. Therefore, take an availability group offline only to migrate the availability group resources from one WSFC cluster to another.
During a cross-cluster migration of AlwaysOn Availability Groups, if any applications connect directly to the primary replica of an availability group, the availability group must be taken offline. Cross-cluster migration of AlwaysOn Availability Groups supports OS upgrade with minimal downtime of availability groups. The typical scenario is to use cross-cluster migration of AlwaysOn Availability Groups for OS upgrade to Windows 8 or Windows Server 2012. For more information, see Cross-Cluster Migration of AlwaysOn Availability Groups for OS Upgrade.
Use the OFFLINE option only for a cross-cluster migration of availability group resources.
The server instance on which you enter the OFFLINE command must be running SQL Server 2012 SP1 or above (Enterprise edition or above).
The availability group must currently be online.
Before you take the availability group offline, delete the availability group listener or listeners. For more information, see Remove an Availability Group Listener (SQL Server).
Requires ALTER AVAILABILITY GROUP permission on the availability group, CONTROL AVAILABILITY GROUP permission, ALTER ANY AVAILABILITY GROUP permission, or CONTROL SERVER permission.
To take an availability group offline
Connect to a server instance that hosts an availability replica for the availability group. This replica can be the primary replica or a secondary replica.
Use the ALTER AVAILABILITY GROUP statement, as follows:
ALTER AVAILABILITY GROUP group_name OFFLINE
where group_name is the name of the availability group.
Logging of OFFLINE operation: The identity of the WSFC node where the OFFLINE operation was initiated is stored in both the WSFC cluster log and the SQL ERRORLOG.
If you did not delete the availability group listener before taking the group offline: If you are migrating the availability group to another WSFC cluster, delete the VNN and VIP of the listener. You can delete them by using either the Failover Cluster Management console, the Remove-ClusterResource PowerShell cmdlet, or cluster.exe. Note that cluster.exe is deprecated on Windows 8.