删除亚马逊文档数据库集群 - Amazon DocumentDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

删除亚马逊文档数据库集群

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

删除保护

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

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

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

Using the Amazon Web Services Management Console

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

确定集群是否已启用删除保护:
  1. 登录并打开亚马逊 DocumentDB 控制台,网址为 https://console.aws.amazon.com/docdb。 Amazon Web Services Management Console

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

    提示

    如果您在屏幕左侧没有看到导航窗格,请在页面左上角选择菜单图标 ()。

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

  4. 选择集群的名称,然后选择 Configuration (配置) 选项卡。在 Cluster details (集群详细信息) 部分中,找到 Deletion protection (删除保护)。如果已启用删除保护,则修改集群以禁用删除保护。有关修改集群的信息,请参阅 修改亚马逊文档数据库集群

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

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

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

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

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

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

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

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

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

Using the Amazon 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. 接下来,禁用删除保护。

    使用删除 Amazon 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 中的所有集群都必须是唯一 Amazon Web Services 账户的。

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

    以下 Amazon 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

    以下 Amazon 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 操作的输出是您要删除的集群。

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