删除 Amazon DocumentDB 集群 - Amazon DocumentDB

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

删除 Amazon DocumentDB 集群

您可以使用 AWS Management Console 或删除 Amazon DocumentDB 集群。 AWS CLI要删除集群,集群必须处于可用 状态,且不得有任何与其关联的实例。如果集群已停止,则首先启动集群,等待集群进入可用 状态,然后删除集群。有关更多信息,请参阅 停止和启动 Amazon DocumentDB 集群

删除保护

为了防止您的集群遭到意外删除,您可以启用删除保护。在使用控制台创建集群时,将默认启用删除保护。但是,如果您使用 AWS CLI创建集群,将默认禁用删除保护。

Amazon DocumentDB 为集群实施删除保护,不论您是使用控制台还是 AWS CLI来执行删除操作。如果已启用删除保护,则无法删除集群。要删除启用了删除保护的实例,首先请修改该集群并禁用删除保护。

当在集群上启用数据保护的情况下使用控制台时,无法删除该集群的最后一个实例,因为这样也会删除集群。您可以使用 AWS CLI删除受删除保护的集群的最后一个实例。但是,集群本身仍然存在,您的数据将被保留。您可以通过为集群创建新实例来访问数据。有关启用和禁用删除保护的更多信息,请参阅:

Using the AWS Management Console

要使用删除集群 AWS Management Console,必须禁用删除保护。

确定集群是否已启用删除保护:
  1. 登录 AWS Management Console,然后在 /docdb 上打开亚马逊文档数据库控制台。https://console.aws.amazon.com

  2. 在导航窗格中,选择集群

    提示

    如果您在屏幕左侧没有看到导航窗格,请在页面左上角选择菜单图标 (Hamburger menu icon with three horizontal lines.)。

  3. 请注意,在集群导航框中,集群标识符列既显示集群又显示实例。实例列于集群下方,类似于以下屏幕截图。

    图片:集群导航框中显示一列现有集群链接及其对应的实例链接。
  4. 选择集群的名称,然后选择 Configuration (配置) 选项卡。在 Cluster details (集群详细信息) 部分中,找到 Deletion protection (删除保护)。如果已启用删除保护,则修改集群以禁用删除保护。有关修改集群的信息,请参阅 修改 Amazon DocumentDB 集群

    禁用删除保护后,您就可以删除该集群了。

删除集群:
  1. 在导航窗格中,选择集群

  2. 通过检查实例列确定集群是否具有任何实例。在删除集群之前,必须先删除其所有实例。有关更多信息,请参阅 删除 Amazon DocumentDB 实例

  3. 根据您的集群是否有任何实例,请执行以下步骤之一。

    • 如果集群没有实例,请选择集群名称左侧的按钮,然后选择 Actions (操作)。从下拉菜单中,选择删除。填写删除 <集群名称> 对话框,然后选择删除

    • 如果集群具有一个或多个实例,请执行以下操作:

      1. 在导航窗格中,选择实例

      2. 删除集群中的每个实例。当您删除最后一个实例时,集群也将被删除。有关删除实例的信息,请参阅 删除 Amazon DocumentDB 实例

删除集群需要几分钟时间。要监控集群的状态,请参阅监控 Amazon DocumentDB 集群的状态

Using the AWS CLI

您不能删除具有任何关联实例的集群。要确定哪些实例与您的集群关联,请运行 describe-db-clusters 命令并删除集群的所有实例。然后,在需要时禁用集群的删除保护,最后删除集群。

  1. 首先,删除集群的所有实例。

    要确定需要删除的实例,请运行以下命令。

    aws docdb describe-db-clusters \ --db-cluster-identifier sample-cluster \ --query 'DBClusters[*].[DBClusterIdentifier,DBClusterMembers[*].DBInstanceIdentifier]'

    此操作的输出将类似于下文(JSON 格式)。

    [ [ "sample-cluster", [ "sample-instance-1", "sample-instance-2" ] ] ]

    如果要删除的集群包含任何实例,请如下所示删除它们。

    aws docdb delete-db-instance \ --db-instance-identifier sample-instance
  2. 接下来,禁用删除保护。

    使用删除 AWS CLI 集群的所有实例并不能删除集群。您还必须删除集群,但仅当删除保护处于禁用状态时才可以执行此操作。

    要确定集群是否已启用删除保护,请运行以下命令。

    提示

    要查看所有 Amazon DocumentDB 集群的删除保护状态,请省略 --db-cluster-identifier 参数。

    aws docdb describe-db-clusters \ --db-cluster-identifier sample-cluster \ --query 'DBClusters[*].[DBClusterIdentifier,DeletionProtection]'

    此操作的输出将类似于下文。

    [ [ "sample-cluster", "true" ] ]

    如果集群已启用删除保护,则修改集群并禁用删除保护。要对集群禁用删除保护,请运行以下命令。

    aws docdb modify-db-cluster \ --db-cluster-identifier sample-cluster \ --no-deletion-protection \ --apply-immediately
  3. 最后,删除集群。

    禁用删除保护后,您就可以删除该集群了。要删除集群,请使用带以下参数的 delete-db-cluster 操作。

    • --db-cluster-identifier – 必填项。要删除的集群的标识符。

    • --final-db-snapshot-identifier — 可选。如果您需要最终快照,则必须包含该参数和最终快照的名称。必须包含 --final-db-snapshot-identifier--skip-final-snapshot

      命名约束:

      • 长度为 [1—63] 个字母、数字或连字符。

      • 第一个字符必须是字母。

      • 不能以连字符结束或包含两个连续连字符。

      • 每个区域的 Amazon RDS、Amazon Neptune 和 Amazon DocumentDB 中的所有集群都必须是唯一 AWS 账户的。

    • --skip-final-snapshot — 可选。仅当您不想在删除集群之前拍摄最终快照时,才使用此参数。默认设置是拍摄最终快照。必须包含 --final-db-snapshot-identifier--skip-final-snapshot

    以下 AWS CLI 代码删除sample-cluster带有最终快照的集群。如果有任何实例与集群关联,或者如果已启用删除保护,则此操作将失败。

    对于 Linux、macOS 或 Unix:

    aws docdb delete-db-cluster \ --db-cluster-identifier sample-cluster \ --final-db-snapshot-identifier sample-cluster-final-snapshot

    对于 Windows:

    aws docdb delete-db-cluster ^ --db-cluster-identifier sample-cluster ^ --final-db-snapshot-identifier sample-cluster-final-snapshot

    以下 AWS CLI 代码在不拍摄最终快照sample-cluster的情况下删除集群。

    对于 Linux、macOS 或 Unix:

    aws docdb delete-db-cluster \ --db-cluster-identifier sample-cluster \ --skip-final-snapshot

    对于 Windows:

    aws docdb delete-db-cluster ^ --db-cluster-identifier sample-cluster ^ --skip-final-snapshot

    delete-db-cluster 操作的输出是您要删除的集群。

    删除集群需要几分钟时间。要监控集群的状态,请参阅监控集群的状态