删除多个实例

本页面介绍如何删除 Cloud SQL 实例。

如果您计划删除实例,请注意以下事项:

  • 只要实例具有任何副本,您就不能删除该实例。必须先删除所有副本。
  • 删除某实例后,该实例可能仍然显示在项目中,大小为“未知”,但其状态为“正在删除”。这是正常的,而且在短时间后该实例会完全消失。
  • 完全删除与实例相关的底层资源可能需要长达一周时间,但读取副本除外,通常会在几分钟内删除。
  • 您可以立即重新使用已删除的实例名称来创建新实例。
  • 如果为实例启用了删除保护,则必须先将其停用,然后才能删除该实例。
  • 在发生意外情况时,请使用最终备份来恢复已删除的实例。

所需权限

默认情况下,只有具有 Cloud SQL Admin (roles/cloudsql.admin) 或 Owner (roles/owner) 角色的用户或服务账号有权删除 Cloud SQL 实例 (cloudsql.instances.delete)。

您还可以为包含 cloudsql.instances.delete 权限的用户或服务账号定义 IAM 自定义角色。IAM 自定义角色支持此权限。

删除实例

您可以使用 Google Cloud 控制台、gcloud CLI 或 API 删除 Cloud SQL 实例。

控制台

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 如需打开实例的概览页面,请点击实例名称。
  3. 点击删除
  4. 删除实例对话框中,完成以下操作:
    1. 在文本字段中,输入显示的实例 ID。
    2. 如果您要对实例执行最终备份,请保持进行最终备份复选框处于选中状态,展开保留选项菜单,然后在保留字段中输入保留最终备份的天数。您可以指定 1 到 365 天。

      如果您想在不执行最终备份的情况下删除实例,请清除该复选框。

    3. 描述此备份文本区域中,您可以提供备份的说明。
    4. 点击删除

gcloud

若要删除实例,请使用 gcloud sql instances delete 命令:

gcloud sql instances delete INSTANCE_NAME \
--project=PROJECT_ID

进行以下替换:

  • INSTANCE_NAME:实例的名称
  • PROJECT_ID:包含待删除实例的 Google Cloud 项目的 ID 或项目编号

REST v1

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:包含待删除实例的 Google Cloud 项目的 ID 或项目编号
  • INSTANCE_NAME:实例的名称

HTTP 方法和网址:

DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-15T00:10:22.078Z",
  "operationType": "DELETE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}
如需了解如何为此任务构建底层 REST API 请求,请参阅 instances:delete 页面上的 APIs Explorer

REST v1beta4

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_ID:包含待删除实例的 Google Cloud 项目的 ID 或项目编号
  • INSTANCE_NAME:实例的名称

HTTP 方法和网址:

DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-15T00:10:22.078Z",
  "operationType": "DELETE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}
如需了解如何为此任务构建底层 REST API 请求,请参阅 instances:delete 页面上的 APIs Explorer

恢复已删除的实例

当您删除实例时,Cloud SQL 会删除该实例的所有资源,包括按需备份自动备份

如果您在删除实例时执行最终备份,则可以使用此备份来恢复实例,方法是从最终备份创建实例,或将最终备份恢复到现有实例。

如果您使用最终备份恢复实例,则该实例的 IP 地址可能与原始已删除实例的 IP 地址不同。

如果您在没有执行最终备份的情况下意外删除了实例,请在实例删除后 4 天内联系 Cloud Customer Care 请求恢复。如果实例可以恢复,则系统会恢复实例配置,包括删除前使用的 IP 地址。删除时可用的所有备份也会被恢复。