从可用性组中删除辅助副本 (SQL Server)
本主题说明如何通过在 SQL Server 2012 中使用 SQL Server Management Studio、Transact-SQL 或 PowerShell 从 AlwaysOn 可用性组中删除辅助副本。
开始之前:
限制和局限
必备条件
安全性
若要删除辅助副本,请使用:
SQL Server Management Studio
Transact-SQL
PowerShell
**跟进:**在删除辅助副本之后
开始之前
限制和局限
只有主副本支持该任务。
从可用性组中仅可删除辅助副本。
必备条件
- 您必须连接到承载可用性组的主副本的服务器实例。
安全性
权限
对可用性组要求 ALTER AVAILABILITY GROUP 权限、CONTROL AVAILABILITY GROUP 权限、ALTER ANY AVAILABILITY GROUP 权限或 CONTROL SERVER 权限。
[返回页首]
使用 SQL Server Management Studio
删除辅助副本
在对象资源管理器中,连接到承载主副本的服务器实例,然后展开服务器树。
依次展开**“AlwaysOn 高可用性”节点和“可用性组”**节点。
选择可用性组,然后展开**“可用性副本”**节点。
此步骤取决于您是要删除多个副本,还是只删除一个副本,如下所示:
若要删除多个副本,请使用**“对象资源管理器详细信息”**窗格查看并选择所有要删除的副本。 有关详细信息,请参阅使用对象资源管理器详细信息监视可用性组 (SQL Server Management Studio)。
若要删除单个副本,请在**“对象资源管理器”窗格或“对象资源管理器详细信息”**窗格中选中此副本。
右键单击选定的一个或多个辅助副本,然后在命令菜单中选择**“从可用性组中删除”**。
在**“从可用性组删除辅助副本”对话框中,要删除所有列出的辅助副本,请单击“确定”。 如果您不想删除所有列出的副本,请单击“取消”**。
[返回页首]
使用 Transact-SQL
删除辅助副本
连接到承载主副本的服务器实例。
按如下所示使用 ALTER AVAILABILITY GROUP 语句:
ALTER AVAILABILITY GROUP group_name REMOVE REPLICA ON 'instance_name' [,...n]
其中,group_name 为可用性组的名称,instance_name 为该辅助副本所在的服务器实例。
下面的示例将辅助副本从 MyAG 可用性组中删除。 目标辅助副本位于名为 COMPUTER02 的计算机上的服务器实例(名为 HADR_INSTANCE)上。
ALTER AVAILABILITY GROUP MyAG REMOVE REPLICA ON 'COMPUTER02\HADR_INSTANCE';
[返回页首]
使用 PowerShell
删除辅助副本
将目录 (cd) 更改为承载主副本的服务器实例。
使用 Remove-SqlAvailabilityReplica cmdlet。
例如,下面的命令从名为 MyAg 的可用性组中删除服务器 MyReplica 上的可用性副本。 此命令必须在承载可用性组的主副本的服务器实例上运行。
Remove-SqlAvailabilityReplica ` -Path SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MyAg\AvailabilityReplicas\MyReplica
注意 若要查看 cmdlet 的语法,请在 SQL Server PowerShell 环境中使用 Get-Help cmdlet。 有关详细信息,请参阅获取 SQL Server PowerShell 帮助。
设置和使用 SQL Server PowerShell 提供程序
[返回页首]
跟进:在删除辅助副本之后
如果您指定一个当前不可用的副本,则在该副本联机时,将发现该副本已被删除。
删除副本会导致它停止接收数据。 在某个辅助副本确认其已从全局存储中删除之后,该副本将从其数据库(在本地服务器实例上保留为 RECOVERING 状态)中删除可用性组设置。
[返回页首]