管理增强型备份

本页面介绍了如何为 Cloud SQL 实例和项目启用和管理增强型备份。

增强型备份可让您将 Backup and DR Service 与 Cloud SQL 实例搭配使用,以管理备份。如需了解详情,请参阅增强型备份。 如需详细了解 Cloud SQL 中的备份工作原理以及适用于实例的可用选项,请参阅 Cloud SQL 备份简介

准备工作

在为 Cloud SQL 实例管理增强型备份之前,您必须执行以下操作:

启用 Backup and DR API

如需在 Cloud SQL 实例中使用增强型备份,您必须先启用 Backup and DR API:

启用 Backup and DR API

所需权限

您需要具备以下权限才能为 Cloud SQL 实例配置增强型备份:

  • backupdr.backupPlans.list
  • backupdr.backupPlanAssociations.createForCloudSqlInstance
  • backupdr.backupPlanAssociations.fetchForCloudSqlInstance
  • backupdr.backupPlanAssociations.list
  • backupdr.backupPlanAssociations.getForCloudSqlInstance
  • backupdr.backupPlanAssociations.triggerBackupForCloudSqlInstance
  • backupdr.backupPlanAssociations.deleteForCloudSqlInstance
  • backupdr.backupPlans.useForCloudSqlInstance
  • backupdr.bvdataSources.get
  • backupdr.bvdataSources.list

如需详细了解这些权限,请参阅备份和 DR 角色和权限

启用增强型备份

如需为实例启用增强型备份,请执行以下操作:

  1. 确定要使用的备份保险库和备份方案
  2. 将 Cloud SQL 实例与备份方案相关联

如需详细了解增强型备份,请参阅 Cloud SQL 备份简介

确定要使用的备份方案

增强型备份使用备份方案来定义实例的备份时间表和保留设置。如需将 Cloud SQL 实例与备份方案相关联,您需要先确定要使用的备份方案。如需了解详情,请参阅创建和管理备份方案

确定要关联的备份方案后,使用备份方案名称将其与 Cloud SQL 实例相关联。

将备份方案与 Cloud SQL 实例相关联

如需将备份方案与 Cloud SQL 实例相关联,您需要知道要使用的备份方案的名称。如需详细了解如何查找备份方案名称,请参阅创建和管理备份方案

控制台

如需将备份方案与 Cloud SQL 实例相关联,请执行以下操作:

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

    转到“Cloud SQL 实例”

  2. 找到要与备份方案关联的实例。如需打开实例的概览页面,请点击实例名称。

  3. 点击修改

  4. 数据保护部分的备份层级下,选择增强型备份层级

  5. 备份方案部分中,点击选择

  6. 选择备份方案窗口中,执行以下操作:

    1. 项目下,点击浏览,然后搜索并选择包含备份方案的 Backup and DR 项目。

    2. 选择项目后,您会看到所有可用的备份方案。找到要使用的备份方案,然后点击选择

  7. 点击保存

    您的实例已启用增强型备份,并使用关联的备份方案的备份和保留设置。

gcloud

如需将备份方案与 Cloud SQL 实例相关联,请运行以下命令:

gcloud backup-dr backup-plan-associations create BACKUP_PLAN_ASSOCIATION_NAME
--project=PROJECT_ID
--resource=INSTANCE_ID
--backup-plan=BACKUP_PLAN_NAME
--resource-type=sqladmin.googleapis.com/Instance
--location=REGION_ID

替换以下内容:

  • BACKUP_PLAN_ASSOCIATION_NAME:备份方案关联的名称。
  • PROJECT_ID:您的实例的项目 ID。
  • INSTANCE_ID:您要将备份方案关联到的实例的 ID。
  • BACKUP_PLAN_NAME:您要使用的备份方案的名称。如需了解详情,请参阅确定要使用的备份方案
  • REGION_ID:实例的区域。

REST v1

如需创建备份方案关联,请使用 Backup and DR API 中的 backupPlanAssociations 方法。

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

  • backup-plan-association-id:备份方案关联 ID
  • resource-name:Cloud SQL 实例的全名,格式为 projects/project-id/locations/location/instances/instance-name
  • backup-plan-name:备份方案的名称,采用 projects/project-id/backupPlans/backup-plan-name 格式

HTTP 方法和网址:

POST https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations

请求 JSON 正文:

{
  "name": "backup-plan-association-id",
  "resourceType": "sql.googleapis.com/Instance",
  "resource": "resource-name",
  "backupPlan": "backup-plan-name"
}

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

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

管理增强型备份

为实例启用增强型备份并为实例关联备份方案后,您可以执行按需备份查看备份保险柜中的所有备份更改关联的备份方案

如需管理备份方案,请参阅创建和管理备份方案。如需管理备份保险库,请参阅创建和管理备份保险库

更改实例关联的备份方案

您可以更改与 Cloud SQL 实例关联的备份方案。如需更改应用于 Cloud SQL 实例的备份方案,新方案必须与当前备份方案位于同一备份保险柜中,并且与 Cloud SQL 实例位于同一区域。

如需更改关联的备份方案,您必须执行以下操作:

移除关联的备份方案

如需改用新的备份方案,您必须先从 Cloud SQL 实例中移除现有的备份方案关联。如需移除备份方案,请执行以下操作:

控制台

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

    转到“Cloud SQL 实例”

  2. 找到要更改备份选项的实例。如需打开实例的概览页面,请点击实例名称。

  3. 点击修改

  4. 数据保护部分的备份层级下,选择标准备份层级。根据需要更新实例的标准备份设置。

  5. 点击保存

    实例的相关联备份方案已被删除,您的实例现在由标准备份选项管理。现在,您可以将新备份方案与实例相关联

gcloud

如需改用新的备份方案,您必须先从 Cloud SQL 实例中移除现有的备份方案关联。如需移除备份方案,请执行以下操作:

gcloud backup-dr backup-plan-associations delete BACKUP_PLAN_ASSOCIATION_NAME
--location=BACKUP_VAULT_LOCATION

替换以下内容:

  • BACKUP_PLAN_ASSOCIATION_NAME:您要删除的备份方案关联的名称。
  • BACKUP_VAULT_LOCATION:备份保险库的位置。

实例的相关联备份方案已被删除,您的实例现在由标准备份选项管理。现在,您可以将新备份方案与实例相关联

REST v1

如需更改备份方案关联,您需要先移除现有的备份方案关联。使用备份和灾难恢复 API 中的 backupPlanAssociations 方法。

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

  • backup-plan-association-id:备份方案关联 ID,采用 projects/project-id/locations/location/backupPlanAssociations/backup-plan-association-id 格式

HTTP 方法和网址:

POST https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations/delete

请求 JSON 正文:

{
  "name": "backup-plan-association-id",
}

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

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

将新备份方案与实例相关联

移除现有备份方案后,您可以将新备份方案与 Cloud SQL 实例相关联:

控制台

如需将新备份方案与实例相关联,请执行以下操作:

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

    转到“Cloud SQL 实例”

  2. 找到要更改备份方案的实例。如需打开实例的概览页面,请点击实例名称。

  3. 点击修改

  4. 数据保护部分的备份层级下,选择增强型备份层级

  5. 选择备份方案窗口中,执行以下操作之一:

    • 项目下,点击浏览,然后搜索并选择包含要使用的备份方案的 Backup and DR 项目。

    • 选择项目后,您会看到所有可用的备份方案。找到要使用的备份方案,然后点击选择

  6. 点击保存

    您的实例已启用增强型备份,并且正在使用您选择的新备份方案。

gcloud

如需将新备份方案与实例相关联,请执行以下操作:

gcloud backup-dr backup-plan-associations create BACKUP_PLAN_ASSOCIATION_NAME
--project=PROJECT_ID
--resource=INSTANCE_ID
--backup-plan=BACKUP_PLAN_NAME
--resource-type=sqladmin.googleapis.com/Instance
--location=REGION_ID

替换以下内容:

  • BACKUP_PLAN_ASSOCIATION_NAME:备份方案关联的名称。
  • PROJECT_ID:实例的项目 ID。
  • INSTANCE_ID:实例的 ID。
  • BACKUP_PLAN_NAME:备份方案的名称。如需了解详情,请参阅确定要使用的备份方案
  • REGION_ID:实例的区域。

REST v1

删除现有备份方案关联后,使用 Backup and DR API 中的 backupPlanAssociations 方法关联新的备份方案。

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

  • backup-plan-association-id:备份方案关联 ID
  • resource-name:Cloud SQL 实例的全名,格式为 projects/project-id/locations/location/instances/instance-name
  • backup-plan-name:备份方案的名称,采用 projects/project-id/backupPlans/backup-plan-name 格式

HTTP 方法和网址:

POST https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations

请求 JSON 正文:

{
  "name": "backup-plan-association-id",
  "resourceType": "sql.googleapis.com/Instance",
  "resource": "resource-name",
  "backupPlan": "backup-plan-name"
}

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

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

执行按需备份

您可以使用 Google Cloud 控制台、gcloud CLI 或 Cloud SQL API 为具有关联备份计划的 Cloud SQL 实例执行按需备份。

控制台

如需为启用了增强型备份的实例执行按需备份,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往 Cloud SQL 备份页面。

    前往“Cloud SQL 备份”

  2. 点击创建备份

  3. 创建按需备份窗口的选择备份规则下,选择要执行的按需备份类型。备份规则定义了按需备份的保留期限。

  4. 点击创建

    系统会创建按需备份。

gcloud

如需为启用了增强型备份的实例执行按需备份,请运行以下命令:

gcloud backup-dr backup-plan-associations trigger-backup BACKUP_PLAN_ASSOCIATION_NAME
--backup-rule-id=BACKUP_RULE_ID
--project=PROJECT_ID
--location=BACKUP_VAULT_LOCATION
[--no-async]

替换以下内容:

  • BACKUP_PLAN_ASSOCIATION_NAME:Cloud SQL 实例的备份计划关联的名称。如需查找与 Cloud SQL 实例关联的所有备份方案的列表,请参阅列出所有备份方案关联
  • BACKUP_RULE_ID:您要执行的按需备份类型的备份规则名称(例如 rule-daily)。
  • PROJECT_ID:实例的项目 ID。
  • BACKUP_VAULT_LOCATION:与备份方案关联的备份保险库的位置。

REST v1

如需为 Cloud SQL 实例触发按需备份,请使用 Backup and DR API 中的 backupPlanAssociations 方法。

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

  • backup-rule-id:需要触发备份的备份规则 ID

HTTP 方法和网址:

GET https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations/backup-plan-association-id:triggerBackup

请求 JSON 正文:

{
  "ruleId": "backup-rule-id"
}

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

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

列出实例的备份保险库中的所有备份

您可以使用 Google Cloud 控制台、gcloud CLI 或 Cloud SQL API 列出备份保险库中 Cloud SQL 实例的所有备份。

控制台

  1. 在 Google Cloud 控制台中,前往 Cloud SQL 备份页面。

    前往“Cloud SQL 备份”

  2. 备份层级下拉菜单中,选择增强型层级,然后选择包含要使用的备份的备份保险库

    系统会显示所选实例的备份保险柜中可用的所有备份。

gcloud

如需列出备份保险库中 Cloud SQL 实例的所有可用备份,您需要先找到 Cloud SQL 实例的 data-source,然后运行 gcloud backup-dr backups list 命令。

如需查找实例的 data-source,请运行以下命令:

gcloud backup-dr data-source-references
fetch-for-resource-type sqladmin.googleapis.com/Instance
--location=REGION_ID | grep INSTANCE_NAME

替换以下内容:

  • REGION_ID:Cloud SQL 实例的地区 ID。
  • INSTANCE_NAME:Cloud SQL 实例的名称。

如需列出实例的备份库中的所有备份,请运行以下命令:

gcloud backup-dr backups list
--data-source=DATA_SOURCE
--location=REGION_ID
--backup-vault=BACKUP_VAULT_NAME

替换以下内容:

  • DATA_SOURCE:Cloud SQL 实例的 data-source
  • REGION_ID:备份保险库的地区 ID。
  • BACKUP_VAULT_NAME:与备份方案关联的备份保险库的名称。

REST v1

如需列出备份保险库中 Cloud SQL 实例的所有可用备份,您需要先找到 Cloud SQL 实例的数据源,然后使用数据源名称获取所有备份。

查找实例的数据源

如需查找实例的数据源,请使用 Backup and DR API 中的 dataSource.References 方法。

HTTP 方法和网址:

GET https://backupdr.googleapis.com/v1/projects/project-id/locations/location/dataSourceReferences:fetchForResourceType?filter=dataSourceGcpResourceInfo.gcp_resourcename="projects/project-id/instances/instance-id

请求 JSON 正文:

{
  "resourceType": "sqladmin.googleapis.com/Instance"
}

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

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

列出实例的备份

如需使用数据源 ID 列出实例的备份,请使用 Backup and DR API 中的 backupVaults.dataSources.backups 方法。

HTTP 方法和网址:

GET https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupVaults/backup-vault-id/dataSources/data-source-id/backups

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

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

停用增强型备份

您可以将 Cloud SQL 实例切换回标准备份选项,以停用增强型备份。这会删除备份方案与实例之间的关联。

将实例更改为标准备份

控制台

如需停用增强型备份并将实例切换回标准备份选项,请执行以下操作:

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

    转到“Cloud SQL 实例”

  2. 找到要更改备份选项的实例。如需打开实例的概览页面,请点击实例名称。

  3. 点击修改

  4. 数据保护部分,选择备份层级下的标准备份层级。根据需要更新实例的标准备份设置。

  5. 点击保存

    系统会删除实例关联的备份方案,并且您的实例现在由 Cloud SQL 在“标准备份”选项下进行管理。

gcloud

如需停用增强型备份并将实例切换回标准备份选项,请运行以下命令:

gcloud backup-dr backup-plan-associations delete BACKUP_PLAN_ASSOCIATION_NAME
--location=BACKUP_VAULT_LOCATION

替换以下内容:

  • BACKUP_PLAN_ASSOCIATION_NAME:您要删除的备份方案关联的名称。
  • BACKUP_VAULT_LOCATION:备份保险库的位置。

REST v1

如需停用增强型备份,您需要使用 Backup and DR API 中的 backupPlanAssociations 方法移除备份方案关联。

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

  • backup-plan-association-id:备份方案关联 ID,采用 projects/project-id/locations/location/backupPlanAssociations/backup-plan-association-id 格式

HTTP 方法和网址:

POST https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations/delete

请求 JSON 正文:

{
  "name": "backup-plan-association-id",
}

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

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

后续步骤