DROP AVAILABILITY GROUP (Transact-SQL)

适用于:SQL Server

删除指定的可用性组或其所有副本。 如果在删除某一可用性组时承载可用性副本之一的服务器实例处于脱机状态,则在联机后,该服务器实例将删除本地可用性副本。 删除可用性组时,还会删除关联的可用性组侦听器(如果有)。

重要

如果可能,请仅在连接到承载主副本的服务器实例时删除此可用性组。 从主副本中删除此可用性组时,允许对以前的主数据库进行更改(不具有高可用性保护)。 从辅助副本中删除可用性组会使主副本处于 RESTORING 状态,且不允许对此数据库进行更改。

有关删除可用性组的其他方法的信息,请参阅删除可用性组 (SQL Server)

Transact-SQL 语法约定

语法

DROP AVAILABILITY GROUP group_name   
[ ; ]  

注意

若要查看 SQL Server 2014 (12.x) 及更早版本的 Transact-SQL 语法,请参阅早期版本文档

参数

group_name
指定要删除的可用性组的名称。

限制和建议

  • 执行 DROP AVAILABILITY GROUP 需要在服务器实例上启用 Always On 可用性组功能。 有关详细信息,请参阅启用和禁用 Always On 可用性组 (SQL Server)

  • DROP AVAILABILITY GROUP 不能作为批处理的一部分执行,也不能在事务内执行。 此外,不支持表达式和变量。

  • 您可以从拥有某一可用性组的正确安全凭据的任何 Windows Server 故障转移群集 (WSFC) 节点删除该可用性组。 因此,在某一可用性组未保留任何可用性副本时,您可以删除该可用性组。

    重要

    如果 Windows Server 故障转移群集 (WSFC) 群集没有仲裁,则避免删除可用性组。 如果在群集缺少仲裁时必须删除可用性组,则不删除群集中存储的元数据可用性组。 在群集重新获得仲裁后,将需要再次删除此可用性组以便将其从 WSFC 群集中删除。

  • 在辅助副本上,DROP AVAILABILITY GROUP 应仅用于紧急情况。 这是因为删除可用性组会使该可用性组脱机。 如果从辅助副本中删除该可用性组,则主副本无法确定出现 OFFLINE 状态是因为仲裁丢失、强制故障转移还是 DROP AVAILABILITY GROUP 命令。 主副本将转换为 RESTORING 状态以避免出现可能的裂脑情况。 有关详细信息,请参阅 工作方式:DROP AVAILABILITY GROUP 行为 (CSS SQL Server 工程师博客)。

安全性

权限

对可用性组要求 ALTER AVAILABILITY GROUP 权限、CONTROL AVAILABILITY GROUP 权限、ALTER ANY AVAILABILITY GROUP 权限或 CONTROL SERVER 权限。 若要删除并非由本地服务器实例承载的某一可用性组,需要针对该可用性组的 CONTROL SERVER 权限或 CONTROL 权限。

示例

下面的示例删除了 AccountsAG 可用性组。

DROP AVAILABILITY GROUP AccountsAG;  

相关内容

另请参阅

更改可用性组 (Transact-SQL)
CREATE AVAILABILITY GROUP (Transact-SQL)(创建可用性组 (Transact-SQL))
删除可用性组 (SQL Server)