管理备份
Bigtable 备份可帮助您保护表免遭意外数据丢失、损坏或灾难场景的影响。您可以使用 Google Cloud 控制台、Google Cloud CLI 或 Cloud Bigtable 客户端库创建、复制、恢复和监控这些备份。
准备工作
在开始之前,请先查看备份,并参阅版本概览,了解仅在企业 Plus 版中提供的功能。
确保您或您正在使用的用户账号拥有所需的操作权限。
如果您计划使用 gcloud CLI,请安装适用于 Bigtable 的 gcloud CLI。
使用自动备份
您可以使用 gcloud CLI 或 Google Cloud 控制台启用自动备份。默认情况下,自动备份功能会每天为您的表创建标准备份,保留期限为 7 天。您可以通过以下方式自定义自动备份政策:
- 在 SSD 实例上配置热自动备份,方法是指定 24 小时到 10 天的热保留时长。此项设置为必填项,用于确定每个每日备份在转换为标准备份之前保持热备份状态的时长。热自动备份的默认保留期限也为 7 天。如需了解详情,请参阅本文档中的配置热自动备份部分。
- 修改备份保留期限(最长 90 天)。如需了解详情,请参阅本文档的更新自动备份政策部分。
- 选择已启用自动备份的特定集群位置。此选项仅适用于企业 Plus 版。如需了解详情,请参阅本文档的配置自动备份集群位置部分。
无论是手动创建备份还是通过自动备份创建备份,删除、更新、复制和恢复备份的步骤都相同。
您可以延长备份或备份副本的失效日期。如需了解详情,请参阅修改备份或备份副本。
如果您打算启用自动备份,请考虑以下因素:
- 如果将集群添加到包含已启用自动备份的表的实例中,则系统不会在添加的集群上创建每日备份。如需在所有集群(包括新添加的集群)上创建每日备份,请为表停用自动备份,然后重新启用自动备份。
- 如果删除了启用了自动备份的表,随后又取消删除,则需要对恢复的表重新启用自动备份。
- 恢复表的自动备份不会自动为恢复的表启用自动备份。您需要手动启用自动备份。
启用自动备份
您可以使用 Google Cloud 控制台或 Google Cloud CLI 启用自动备份。当您使用默认设置启用自动备份时,Bigtable 会每天在实例中的每个集群上创建表的标准备份,并将其保留 7 天。
Bigtable 在自动备份过程中创建的备份会被分配以 auto 开头的 ID。例如,ID 为 my-table 的表的自动备份 ID 类似于 auto.my-table.c7x3.20230220-145537,其中 my-table 是截断的表 ID,c7x3 是唯一哈希 ID,20230220-145537 是 UTC 格式的日期和时间。
如需创建启用了自动备份的表,请参阅创建和管理表。
控制台
在 Google Cloud 控制台中,打开 Bigtable 实例列表。
点击包含要备份的表的实例。
在 Bigtable 导航菜单中,点击表。
表页面显示实例中的表列表。
如需使用默认设置启用自动每日备份,请在表的自动备份列中点击启用。
Bigtable 最多可能需要一个小时才能开始创建备份。
可选:如需使用自定义设置(例如 SSD 实例上的热自动备份)启用自动备份,请执行以下操作:
- 在表的行中,点击 修改。
- 在配置自动备份部分中,选择启用自动备份。
您还可以稍后更新现有政策,以更改备份类型、保留期限或集群位置(在企业 Plus 版中)。如需了解详情,请参阅本文档中的更新自动备份政策和配置热自动备份部分。
gcloud
如需为表启用自动备份,请运行 gcloud bigtable
tables update 命令。如需详细了解如何在创建表时启用自动备份,请参阅创建表。
对表启用自动备份政策后,更新后的配置最多可能需要 1 个小时才会生效。
gcloud bigtable tables update TABLE_ID \
--instance=INSTANCE_ID \
--enable-automated-backup
替换以下内容:
TABLE_ID:要备份的表的 IDINSTANCE_ID:实例的永久性标识符
可选:您可以更新自动备份政策,以指定自定义保留期限或在 SSD 实例上配置热自动备份。在企业 Plus 版中,您可以为特定位置的集群启用自动备份。如需了解详情,请参阅本文档中的更新自动备份政策和配置热自动备份部分。
停用自动备份
对表停用自动备份政策后,更新后的配置最多可能需要 1 个小时才会生效。在政策更改之前创建的备份会保留到过期为止,除非您将其删除。
控制台
在 Google Cloud 控制台中,打开 Bigtable 实例列表。
点击包含要停用自动备份的表的实例。
在 Bigtable 导航菜单中,点击表。
表页面显示实例中的表列表。
在要停用自动备份的表对应的行中,点击 修改。
在修改表窗格的配置自动备份部分中,清除启用自动备份。
点击保存。
gcloud
如需为表停用自动备份,请运行 gcloud bigtable
instances tables update 命令。
gcloud bigtable instances tables update TABLE_ID \
--instance=INSTANCE_ID \
--disable-automated-backup
替换以下内容:
TABLE_ID:表的 IDINSTANCE_ID:实例的永久性标识符
查看自动备份政策
您可以使用Google Cloud 控制台或 Google Cloud CLI 查看表的自动备份政策。
控制台
在 Google Cloud 控制台中,打开 Bigtable 实例列表。
点击包含您要查看其自动备份政策的表的实例。
在 Bigtable 导航菜单中,点击表。
在表页面上,如果未启用自动备份,自动备份列会显示未启用;如果已启用自动备份,则会显示备份类型(标准或热)。在企业 Plus 版中,如果为特定集群配置了自动备份,该列还会列出已备份的可用区。您还可以点击表 ID,在表概览页面上查看此摘要。
可选:如需查看完整的政策配置,请在表所在的行中点击 修改。
在修改表窗格中,配置自动备份部分会显示备份类型设置(如果选择了热,则会显示将热备份设置为标准备份时长)、保留期限和选择要备份的集群设置。如需关闭窗格而不进行更改,请点击取消。
gcloud
如需查看表的自动备份政策,请运行 gcloud bigtable instances tables describe 命令:
gcloud bigtable instances tables describe TABLE_ID \
--instance=INSTANCE_ID
替换以下内容:
TABLE_ID:表的 IDINSTANCE_ID:实例的永久性标识符
输出类似于以下内容:
automatedBackupPolicy:
frequency: 86400s
keepHotDuration: 172800s
retentionPeriod: 604800s
locations: us-central1-a,us-east1-b,europe-west1-c
columnFamilies:
my-family: {}
createTime: '2023-02-07T20:10:55.613546Z'
granularity: MILLIS
name: projects/my-project/instances/my-instance/tables/my-table
updateTime: '2023-02-07T20:10:55.613546Z'
请注意以下几点:
- 如果未为表启用自动备份,则
automatedBackupPolicy字段不存在。 - 仅当您将政策配置为创建热自动备份时,
keepHotDuration字段才会显示。如果存在,则表示每个自动备份在转换为标准备份之前保持热备份状态的时长。如果政策创建标准备份(默认),则该字段不存在。 retentionPeriod字段表示自动创建的备份的保留期限。您可以修改单个备份的保留期限,在企业版中,保留期限最长可达 90 天,在企业 Plus 版中,保留期限最长可达 365 天,从备份创建时间开始计算。如需更新备份保留期限,请参阅修改备份或备份副本。- 仅当在企业 Plus 版中为特定位置的集群启用了自动备份时,
locations字段才会显示。如果存在,则表示已启用自动备份的集群位置列表。如果所有位置都启用了自动备份(默认),则该字段不存在。
更新自动备份政策
自动备份政策更改不会追溯应用于现有备份。 新的备份政策设置仅适用于后续备份。
在企业版和企业 Plus 版中,您都可以配置最长 90 天的自定义保留期限。在 SSD 实例上,您可以通过指定热备份保留时长来配置热自动备份,该时长用于设置自动备份在转换为标准备份之前保持热备份状态的时长。在企业 Plus 版中,您还可以选择特定的集群位置进行自动备份。如需详细了解热自动备份,请参阅配置热自动备份。
如需更新现有备份(包括自动备份)的保留期限或失效日期,请参阅修改备份或备份副本。
控制台
在 Google Cloud 控制台中,打开 Bigtable 实例列表。
点击包含要更新其自动备份政策的表的实例。
在 Bigtable 导航菜单中,点击表。
表页面显示实例中的表列表。
在要更新的表所在的行中,点击 修改。
在修改表窗格的配置自动备份部分中,确保已选择启用自动备份,然后更新以下任一设置:
- 在备份类型部分中,选择标准或热。您无法在 HDD 实例或启用了分层存储的表上选择热。如果您选择热备份,请在设置热备份转标准备份的时间字段中输入一个介于 1 到 10 之间的整数(不超过保留期限),以指定每个自动备份在自动转换为标准备份之前保持热备份状态的天数。
- 在备份配置部分的保留期限字段中,输入一个介于 3 到 90 之间的整数,以指定 Bigtable 保留备份的天数(最长 90 天)。
- Enterprise Plus 版:在备份配置部分的选择要备份的集群列表中,选择您希望 Bigtable 每天创建备份的集群,然后点击确定。
点击保存。
gcloud
如需修改表的自动备份政策,请将 gcloud bigtable tables update 命令与以下一个或多个标志结合使用:
--automated-backup-retention-period:设置自定义保留期限--automated-backup-keep-hot-duration:在 SSD 实例上,将 Bigtable 配置为创建热自动备份,并指定这些备份在转换为标准备份之前保持热备份状态的时长--automated-backup-locations:在企业 Plus 版中,仅为指定位置的集群启用自动备份
gcloud bigtable tables update TABLE_ID \
--instance=INSTANCE_ID \
--automated-backup-retention-period=RETENTION_PERIOD \
--automated-backup-keep-hot-duration=KEEP_HOT_DURATION \
--automated-backup-locations=BACKUP_LOCATIONS
替换以下内容:
TABLE_ID:具有自动备份功能的表的 IDINSTANCE_ID:实例的永久性标识符RETENTION_PERIOD:最长 90 天的期限。该值必须以数字加上m、h或d单位(分钟、小时或天)表示,例如15d表示 15 天。示例:
72h或15dKEEP_HOT_DURATION:自动备份在转换为标准备份之前保持热备份状态的时长,从24h(1 天)到10d(10 天),不超过政策的保留期限。以数字加上s、m、h或d单位(秒、分钟、小时或天)表示该值。Bigtable 仅在 SSD 实例和未启用分层存储的表上支持此标志。示例:
24h或2dBACKUP_LOCATIONS:要启用自动备份的集群位置的逗号分隔列表。如果未设置,则备份默认为表实例中的所有集群。示例:
us-central1-a,us-east1-b,europe-west1-c
配置热自动备份
您可以在创建表、启用自动备份或更新自动备份政策时,使用 Google Cloud 控制台或 Google Cloud CLI 配置热自动备份。配置热自动备份时,您需要指定热备份保留时长,该时长决定了每个每日备份在转换为标准备份之前保持热备份状态的时长。例如,如需仅将最近的每日备份保持为热备份,请将保持热备份时长设置为 24 小时(1 天),以便在创建下一个每日备份后,每个每日备份都会转换为标准备份。如需详细了解如何在创建表时配置自动备份,请参阅创建表。
配置热自动备份时,请考虑以下要求和限制:
- 该表必须位于 SSD 实例中。Bigtable 不支持在 HDD 实例上进行热自动备份。
- Bigtable 不支持为已启用分层存储的表创建热自动备份。如需了解详情,请参阅分层存储概览。
- 热保留时长必须至少为 24 小时(
24h或1d,或 Google Cloud 控制台中的 1 天),最多为 10 天 (10d),并且不能超过政策的保留期限。 如需为使用超过 400 TB SSD 存储空间的集群上的表启用热自动备份,请与 Cloud Customer Care 联系。如需了解详情,请参阅备份限制。
控制台
如需为现有表配置热自动备份,请运行以下命令:
在 Google Cloud 控制台中,打开 Bigtable 实例列表。
点击包含要配置的表的 SSD 实例。
在 Bigtable 导航菜单中,点击表。
表页面显示实例中的表列表。
在表的行中,点击 修改。
在修改表窗格的配置自动备份部分中,确保选中启用自动备份复选框。
在备份类型部分中,选择热。
在设置热备份转标准备份的时间字段中,输入一个介于 1 到 10 之间的整数,以指定每个自动备份在自动转换为标准备份之前保持热备份状态的天数。默认值为 3 天。 此值不能超过保留期限字段中的天数。
可选:在备份配置部分,在保留期限字段中输入 3 到 90 之间的整数,或者在企业 Plus 版中,在选择要备份的集群列表中选择特定集群,然后点击确定。
点击保存。
如需停止将后续自动备份保留为热备份,并将政策还原为创建标准备份,请打开表的修改表窗格,在备份类型部分中选择标准,然后点击保存。更改备份类型不会影响已创建的备份。 现有热备份在过渡期结束之前仍会保持热备份状态。
gcloud
如需为表配置热自动备份,请使用 --automated-backup-keep-hot-duration 标志运行 gcloud bigtable tables update 命令:
gcloud bigtable tables update TABLE_ID \
--instance=INSTANCE_ID \
--automated-backup-keep-hot-duration=KEEP_HOT_DURATION
替换以下内容:
TABLE_ID:要配置的表的 IDINSTANCE_ID:实例的永久性标识符KEEP_HOT_DURATION:自动备份在转换为标准备份之前保持热备份状态的时长,从24h(1 天)到10d(10 天),不超过政策的保留期限。以数字加上s、m、h或d单位(秒、分钟、小时或天)表示该值,例如24h或2d。如果尚未在表上启用自动备份,则在运行gcloud bigtable tables update命令时还必须添加--automated-backup-retention-period标志。否则,该命令会失败,并显示缺少保留期限错误。
如需停止将自动备份保持为热备份,并将政策还原为创建标准备份,请使用 --clear-automated-backup-keep-hot-duration 标志运行 gcloud bigtable tables update 命令。清除热保留时长不会影响已创建的备份。现有热备份会保持热备份状态,直到其热备份保留时长到期并转换为标准备份。
gcloud bigtable tables update TABLE_ID \
--instance=INSTANCE_ID \
--clear-automated-backup-keep-hot-duration
替换以下内容:
TABLE_ID:要配置的表的 IDINSTANCE_ID:实例的永久性标识符
配置自动备份集群位置
默认情况下,如果您为具有多个集群的实例中的表启用自动备份,Bigtable 会每天在实例中的每个集群上创建备份。在企业 Plus 版中,您可以选择性地配置自动备份,以便在特定位置的集群上创建每日备份。
您可以在创建表、启用自动备份或更新自动备份政策时配置自动备份集群位置。
控制台
在 Google Cloud 控制台中,打开 Bigtable 实例列表。
点击包含要配置的表的实例。
在 Bigtable 导航菜单中,点击表。
在表页面上,点击表所在行中的 修改。
在修改表窗格的配置自动备份部分中,确保已选择启用自动备份。
在备份配置部分的选择要备份的集群列表中,选择您希望 Bigtable 每天创建备份的集群,然后点击确定。
点击保存。
如需恢复为在实例中的所有集群上创建每日备份,请打开表的修改表窗格,在选择要备份的集群列表中选择所有集群,点击确定,然后点击保存。
gcloud
如需为自动备份指定集群位置,请使用 --automated-backup-locations 标志运行 gcloud bigtable tables update 命令:
gcloud bigtable tables update TABLE_ID \
--instance=INSTANCE_ID \
--automated-backup-locations=BACKUP_LOCATIONS
替换以下内容:
TABLE_ID:要配置的表的 IDINSTANCE_ID:实例的永久性标识符BACKUP_LOCATIONS:要启用自动备份的集群位置的英文逗号分隔列表,例如us-central1-a,us-east1-b
如需移除自定义自动备份位置并还原为在实例的所有集群位置创建备份,请使用 --clear-automated-backup-locations 标志运行 gcloud bigtable tables update 命令:
gcloud bigtable tables update TABLE_ID \
--instance=INSTANCE_ID \
--clear-automated-backup-locations
替换以下内容:
TABLE_ID:要配置的表的 IDINSTANCE_ID:实例的永久性标识符
查看事件日志
启用自动备份后,Bigtable 会在创建备份时发出系统事件日志。如果备份创建延迟,它还会发出事件日志。
如需在控制台中的 Bigtable 集群概览页面上查看自动备份系统事件日志,请执行以下操作:
在 Google Cloud 控制台中,打开 Bigtable 实例列表。
点击实例 ID。
点击集群 ID。
如果过去一小时内创建了自动备份事件日志,这些日志会显示在日志窗格中。
可选:如需查看较早的事件日志,请点击 1 小时旁边的箭头,然后选择其他时间范围。
如需在 Logs Explorer 中查看自动备份系统事件日志,请按以下步骤操作:
导航到 Logs Explorer:
选择相应的 Google Cloud 项目。
如需查看备份创建事件,请在查询字段中输入以下内容:
resource.type="audited_resource" resource.labels.service="bigtableadmin.googleapis.com" resource.labels.method="CreateAutomatedBackup"点击运行查询。
如需查看备份延迟事件,请在查询字段中输入以下内容:
resource.type="audited_resource" resource.labels.service="bigtableadmin.googleapis.com" resource.labels.method="DelayedAutomatedBackup"点击运行查询。
查询结果包含类似于以下内容的消息:
Automated backup is delayed for table ab-test on cluster my-cluster-staging-c1.
创建标准备份
您可以使用 Google Cloud CLI、控制台或某个 Bigtable 客户端库创建表的标准备份。您还可以启用自动备份,让 Bigtable 每天为您创建标准备份。如需了解详情,请参阅启用自动备份。
控制台
在 Google Cloud 控制台中,前往 Bigtable 实例页面。
点击包含要备份的表的实例。
在左侧导航窗格中,点击备份。
点击创建备份。
在表 ID 列表中,选择要备份的表。(如果您在表概览页面上点击 表操作菜单中的创建备份,则 Bigtable 会填充表。)
如果您使用复制功能,请选择集群的集群 ID。(如果您在集群概览页面上点击集群 ID 旁边的创建备份,则 Bigtable 会填充表和集群。)
为备份输入唯一 ID。
在备份类型部分中,选择标准。
选择其中一个选项,设置到期日期。
点击创建。
Google Cloud 控制台会显示经过过滤的备份页面,以显示备份及其详细信息。
可选:如需查看备份状态,请点击活动标签页。
Bigtable 完成数据备份后,状态列中会显示备份完成状态。
gcloud
如果您不知道实例 ID,请使用
bigtable instances list命令查看项目的实例列表:gcloud bigtable instances list查看包含要备份的表的实例的备份列表,以便选择目标集群上尚未使用的备份 ID:
gcloud bigtable backups list --instance=INSTANCE_ID \ --cluster=CLUSTER_ID替换以下内容:
INSTANCE_ID:实例的永久性标识符CLUSTER_ID:集群的永久性标识符
查看表列表,确认要备份的表的 ID:
gcloud bigtable instances tables list --instances=INSTANCE_ID将
INSTANCE_ID替换为实例的永久标识符。运行
gcloud bigtable instances backups create命令,基于表创建备份,并提供失效日期或保留期限:gcloud bigtable backups create BACKUP_ID --instance=INSTANCE_ID \ --cluster=CLUSTER_ID \ --table=TABLE_ID \ --expiration-date=EXPIRATION_DATE \ --retention-period=RETENTION_PERIOD替换以下内容:
BACKUP_ID:您分配给备份的 IDINSTANCE_ID:实例的永久性标识符CLUSTER_ID:集群的永久性标识符TABLE_ID:要备份的表的 IDEXPIRATION_DATE:未来的日期,在企业版中最多 90 天,在企业 Plus 版中最多 365 天。 该值的格式必须为“祖鲁时”世界协调时间 (UTC) 时间戳,精确到纳秒,例如2022-10-02T15:01:23.045123456Z。RETENTION_PERIOD:企业版中最长 90 天,企业 Plus 版中最长 365 天。该值必须以数字加上m、h或d单位(分钟、小时或天)表示,例如36h或15d。
此命令接受以下可选标志:
--async:在操作完成之前将操作 ID 返回到终端。如果想要检查操作的状态,则此标志非常有用。
查看备份列表,看看备份是否已创建:
gcloud bigtable backups list --instance=INSTANCE_ID \ --cluster=CLUSTER_ID替换以下内容:
INSTANCE_ID:实例的永久性标识符CLUSTER_ID:集群的永久性标识符
如果备份未列出,请检查操作状态。
状态为
Ready表示备份已完成。
创建热备份
您可以使用 Google Cloud 控制台或 Google Cloud CLI 按需创建热备份。您还可以配置热自动备份,让 Bigtable 每天为您创建热备份。如需了解详情,请参阅配置热自动备份。
您无法为已启用分层存储(预览版)的表创建热备份。如需了解详情,请参阅分层存储概览。
控制台
您可以使用 Google Cloud 控制台创建表的热备份,如下所示:
在 Google Cloud 控制台中,前往 Bigtable 实例页面。
点击包含要备份的表的实例。
在左侧导航窗格中,点击备份。
点击创建备份。
在表 ID 列表中,选择要备份的表。(如果您在表概览页面上点击 表操作菜单中的创建备份,则 Bigtable 会填充表。)
如果您使用复制功能,请选择集群的集群 ID。(如果您在集群概览页面上点击集群 ID 旁边的创建备份,则 Bigtable 会填充表和集群。)
在备份 ID 字段中,输入备份的唯一 ID。
在备份类型部分中,选择热。
在将热存储设置为标准存储列表中,选择以下选项之一:
- 如需在备份到期之前一直将其保留在热存储中,请选择从不。
- 如需在 3 天后将热备份转换为标准备份,请选择 3 天。
- 如需指定将热备份转换为标准备份的自定义日期和时间,请选择自定义。此值必须至少比 Bigtable 创建备份的时间晚 24 小时。
点击创建。
Google Cloud 控制台会显示经过过滤的备份页面,以显示备份及其详细信息。
可选:如需查看备份状态,请点击活动标签页。
Bigtable 完成数据备份后,状态列中会显示备份完成状态。
gcloud
如果您不知道实例 ID,请使用
bigtable instances list命令查看项目的实例列表:gcloud bigtable instances list查看包含要备份的表的实例的备份列表,以便选择目标集群上尚未使用的备份 ID:
gcloud bigtable backups list --instance=INSTANCE_ID \ --cluster=CLUSTER_ID替换以下内容:
INSTANCE_ID:实例的永久性标识符CLUSTER_ID:集群的永久性标识符
查看表列表,确认要备份的表的 ID:
gcloud bigtable instances tables list --instances=INSTANCE_ID将
INSTANCE_ID替换为实例的永久标识符。运行
gcloud bigtable instances backups create命令,为表创建热备份,并提供失效日期或保留期限:gcloud bigtable backups create BACKUP_ID --instance=INSTANCE_ID \ --cluster=CLUSTER_ID \ --table=TABLE_ID \ --expiration-date=EXPIRATION_DATE \ --retention-period=RETENTION_PERIOD \ --backup-type=HOT替换以下内容:
BACKUP_ID:您分配给备份的 IDINSTANCE_ID:实例的永久性标识符CLUSTER_ID:集群的永久性标识符TABLE_ID:要备份的表的 IDEXPIRATION_DATE:未来的日期,在企业版中为 90 天或更短,在企业 Plus 版中为 365 天或更短。日期必须采用“祖鲁时”世界协调时间 (UTC) 时间戳格式,精确到纳秒,例如2022-10-02T15:01:23.045123456Z。RETENTION_PERIOD:企业版中最长 90 天或企业 Plus 版中最长 365 天的期限,以数字加上m、h或d单位(分钟、小时或天)表示,例如36h或89d。
此命令接受以下可选标志:
--hot-to-standard-time=HOT_TO_STANDARD_TIME:Bigtable 将备份从热备份转换为标准备份的日期和时间,格式为“Zulu”世界协调时间 (UTC) 时间戳(例如2024-08-02T15:01:23.045123456Z)或相对时长(例如+P30D表示 30 天;请参阅gcloud topic datetimes)。此值必须至少比备份创建时间晚 24 小时。--async:在操作完成之前将操作 ID 返回到终端。如果想要检查操作的状态,则此标志非常有用。
查看备份列表,看看备份是否已创建:
gcloud bigtable backups list --instance=INSTANCE_ID \ --cluster=CLUSTER_ID替换以下内容:
INSTANCE_ID:实例的永久性标识符CLUSTER_ID:集群的永久性标识符
如果备份未列出,请检查操作状态。
状态为
Ready表示备份已完成。
使用备份进行恢复
即使源表启用了自动备份,通过备份恢复的新表也不会启用自动备份。如果您希望在新表上启用自动备份,则必须启用该功能。
无论是标准备份还是热备份,从备份恢复的步骤都相同。Bigtable 恢复热备份到生产性能的速度比标准备份更快。
控制台
您无法使用 Google Cloud 控制台将内容恢复到其他项目。如果需要这样做,请改用 gcloud CLI。
在 Google Cloud 控制台中,前往 Bigtable 实例页面。
点击包含您要恢复的备份的实例。
在左侧导航窗格中,点击备份。
针对您要恢复的备份,点击恢复。
选择要恢复到的实例。
没有足够存储空间来存放新表的实例不可用。如果您没有权限在某个实例中创建表,该实例也将不可用。如需了解详情,请将鼠标悬停在 图标上。
如果您从受 CMEK 保护的备份进行恢复,则目标实例也必须受 CMEK 保护。
如果您从具有微秒级时间戳粒度的表的备份进行恢复,则目标实例必须是企业 Plus 版实例。
您无法使用Google Cloud 控制台恢复到其他项目。如果需要这样做,请改用 gcloud CLI。
为要从备份创建的表输入唯一 ID。 您以后无法更改此 ID。
点击恢复。
控制台会显示经过过滤的表页面以显示新表。
控制台显示每个集群的恢复状态。当所有集群的状态列显示就绪时,该表已恢复并复制到实例中的所有集群。
gcloud
如果您不知道实例 ID,请使用
bigtable instances list命令查看项目的实例列表:gcloud bigtable instances list查看包含备份的实例的备份列表,以验证备份是否存在:
gcloud bigtable backups list --instance=INSTANCE_ID_SOURCE \ --cluster=CLUSTER_ID替换以下内容:
INSTANCE_ID_SOURCE:源实例的永久 IDCLUSTER_ID:集群的永久性标识符
查看目标实例中表的列表,以便为尚未使用的新表选择 ID:
gcloud bigtable instances tables list --instances=INSTANCE_ID_DESTINATION将
INSTANCE_ID_DESTINATION替换为目标实例的永久 ID。运行
gcloud bigtable instances tables restore命令,从备份恢复到新表:gcloud bigtable instances tables restore \ --source=projects/PROJECT_ID_SOURCE/instances/INSTANCE_ID_SOURCE/clusters/CLUSTER_ID/backups/BACKUP_ID \ --destination=TABLE_ID_NEW \ --destination-instance=INSTANCE_ID_DESTINATION替换以下内容:
PROJECT_ID_SOURCE:包含要从中恢复数据的备份的项目的 IDINSTANCE_ID_SOURCE:源实例的永久 IDCLUSTER_ID:集群的永久性标识符BACKUP_ID:要从中恢复的备份的 IDTABLE_ID_NEW:新表的 IDINSTANCE_ID_DESTINATION:目标实例的永久 ID
此命令接受以下可选标志:
--project=PROJECT_ID_DESTINATION:要恢复到的项目的 ID。如果您未指定此选项,则备份将恢复到创建它的同一实例中的新表。--async:在操作完成之前将操作 ID 返回到终端。如果想要检查操作的状态,则此标志非常有用。
查看表列表,看看表是否已创建:
gcloud bigtable instances tables list --instances=INSTANCE_ID_DESTINATION将
INSTANCE_ID_DESTINATION替换为目标实例的永久 ID。如果备份未列出,请检查操作状态。
创建备份的副本
控制台
You are not able to create a copy of a backup in a different project
using the console. If you need to do so, use the
gcloud CLI instead.
在 Google Cloud 控制台中,前往 Bigtable 实例页面。
点击包含您要复制的备份的实例。
在左侧导航窗格中,点击备份。
对要复制的备份,展开恢复旁边的“更多”菜单,然后点击复制。
对要创建其副本的备份,点击复制。
如果该备份本身已是另一个备份的副本,则复制操作不可用。
选择目标实例。
您无法使用控制台在其他项目中创建备份的副本。如果需要这样做,请改用 gcloud CLI。
没有足够存储空间来存放备份副本的实例不可用。如果您没有权限在某个实例中创建备份,该实例也将不可用。如需了解详情,请将鼠标指针悬停在 图标上。
如果您要创建受 CMEK 保护的备份的副本,则目标实例也必须受 CMEK 保护。
选择目标集群。
与任何备份一样,一个备份副本仅存储在实例中的一个集群上,即使该实例使用复制功能也是如此。
为要通过备份创建的副本输入一个唯一的 ID。您以后无法更改此 ID。
设置备份副本的到期时间,即提供一个时间值,并从下拉菜单中选择一个单位。
点击复制。
如需查看该副本,请点击查看副本。
控制台会显示目标实例经过过滤的备份页面,以显示刚刚创建的备份副本。如果状态列显示就绪,则表示副本已创建完成,可对其进行后续操作。
gcloud
如果您不知道实例 ID,请使用
bigtable instances list命令查看项目的实例列表:gcloud bigtable instances list查看包含该备份的源实例的备份列表,以验证要复制的备份是否存在:
gcloud bigtable backups list --instance=INSTANCE_ID_SOURCE \ --cluster=CLUSTER_ID_SOURCE替换以下内容:
INSTANCE_ID_SOURCE:源实例的永久 IDCLUSTER_ID_SOURCE:用来存储源备份的集群的 ID
查看目标实例中备份的列表,以便为尚未使用的副本选择 ID:
gcloud bigtable backups list --instances=INSTANCE_ID_DESTINATION将
INSTANCE_ID_DESTINATION替换为目标实例的永久 ID。运行
gcloud bigtable backups copy命令以创建备份副本:gcloud bigtable backups copy \ --source-project=PROJECT_ID_SOURCE \ --source-instance=INSTANCE_ID_SOURCE \ --source-cluster=CLUSTER_ID_SOURCE \ --source-backup=BACKUP_ID_SOURCE \ --destination-project=PROJECT_ID_DESTINATION \ --destination-instance=INSTANCE_ID_DESTINATION \ --destination-cluster=CLUSTER_ID_DESTINATION \ --destination-backup=BACKUP_ID_DESTINATION在该命令中附加以下内容之一:
--retention-period=RETENTION_PERIOD--expiration-date=EXPIRATION_DATE
替换以下内容:
PROJECT_ID_SOURCE:包含要复制的备份的项目INSTANCE_ID_SOURCE:源实例的永久 IDCLUSTER_ID_SOURCE:用来存储源备份的集群的 IDBACKUP_ID_SOURCE:要复制的备份的 IDPROJECT_ID_DESTINATION:要在其中存放副本的项目INSTANCE_ID_DESTINATION:目标实例的永久 IDCLUSTER_ID_DESTINATION:目标实例中要用来存储副本的集群的 IDBACKUP_ID_DESTINATION:您分配给备份副本的 IDRETENTION_PERIOD:备份副本的存留时间,以数字和单位(d或h)表示。必须至少为 6 小时,且最长不得超过源备份创建时间之后的 30 天。例如,5d表示 5 天,15h表示 15 小时。 可以使用该属性,也可以使用到期日期属性。EXPIRATION_DATE:备份副本的到期日期和时间,格式为2022-09-01T10:00:00.0Z。必须至少为 6 小时,且最长为源备份创建时间后的 30 天。
此命令接受以下可选标志:
--async:在操作完成之前将操作 ID 返回到终端。如果想要检查操作的状态,则此标志非常有用。
如果返回超时消息,则备份可能已成功,并且可能已创建副本。
查看备份列表,看看该副本是否已创建:
gcloud bigtable backups list --instances=INSTANCE_ID_DESTINATION将
INSTANCE_ID_DESTINATION替换为目标实例的永久 ID。如果备份未列出,请检查操作状态。
在极少数情况下,创建备份副本的操作会因容量限制而失败,可使用其他目标集群进行重试。如果操作仍失败,请与支持团队联系。
检查操作的状态
控制台
在 Google Cloud 控制台中,前往 Bigtable 实例页面。
点击包含备份的实例。
在左侧导航窗格中,点击备份。
在备份页面上,点击活动。状态列会显示每项操作的当前状态。
恢复表时的操作状态包括:
- 正在等待复制
- 正在恢复备份
- 正在初始化
- 优化就绪
- 准备就绪
创建备份时有如下操作状态:
- 正在创建备份
- 备份完成
复制备份时有如下操作状态:
- 正在复制备份
- 已复制备份
gcloud
如需检查备份操作或恢复操作的状态,您需要该操作的唯一 ID。以下是操作 ID 的示例:
`instances/instance-name/tables/table-name/locations/us-east1-b/operations/917168358249360635`
运行命令以使用 --async 选项创建备份或恢复到新表后,终端会显示操作 ID。
复制操作 ID。
运行
gcloud bigtable operations describe命令:gcloud bigtable operations describe OPERATION_ID将
OPERATION_ID替换为您复制的操作 ID。示例:
gcloud bigtable operations describe \ instances/instance-name/tables/table-name/locations/us-east1-b/operations/917168358249360635您可以每隔一段时间执行一次此命令,直到
DONE的值为TRUE。
如果不知道操作 ID,要么因为您不只是执行命令,要么您处于不同的终端窗口中,则可以查看实例的操作列表,并确定要检查的操作。
查看包含您要备份或恢复到的表的实例的近期操作活动列表:
gcloud bigtable operations list --instance=INSTANCE_ID将
INSTANCE_ID替换为实例的永久标识符。终端会在标记为
NAME、START_TIME、END_TIME和DONE的列中显示操作列表。NAME列中的值是操作 ID。从列表中的第一项开始,复制操作 ID。
使用
gcloud bigtable operations describe查看操作的元数据:gcloud bigtable operations describe OPERATION_ID将
OPERATION_ID替换为您复制的操作 ID。示例:
gcloud bigtable operations describe \ instances/instance-name/tables/table-name/locations/us-east1-b/operations/917168358249360635如果操作的元数据显示
backupInfo的值,则表示您已找到正确的操作,您可以不时重复此命令,直到DONE的值为TRUE。如果元数据未显示
backupInfo的值,请检查第 1 步中显示的操作列表中的下一个操作。
修改备份或备份副本
您可以修改现有备份(无论是手动创建还是通过自动备份政策创建)或备份副本的失效日期或保留期限。在企业版中,您可以将备份的失效日期延长至自备份创建时间起最多 90 天。在企业 Plus 版中,您可以将失效日期延长至自备份创建时间起最多 365 天后。您还可以将热备份转换为标准备份。
控制台
在 Google Cloud 控制台中,前往 Bigtable 实例页面。
点击包含备份的实例。
在左侧导航窗格中,点击备份。
如需更改备份的失效日期和时间,请按照以下步骤操作:
对于要修改的备份,点击恢复旁边的 菜单,然后点击修改。
在备份到期时间部分中,设置日期和时间,然后点击保存。
如需设置热备份的热备份转标准备份日期和时间,请按以下步骤操作:
对于要修改的热备份,点击恢复旁边的 菜单,然后点击修改。
在将热存储更新为标准存储部分中,设置日期和时间,然后点击保存。
gcloud
可通过 gcloud CLI 修改备份或备份副本的到期日期或存留期限。您还可以将热备份转换为标准备份。
查看备份列表:
gcloud bigtable backups list --instance=INSTANCE_ID将
INSTANCE_ID替换为实例的永久标识符。终端会显示备份列表。
记下需要更新的备份的备份和集群 ID。
运行
gcloud bigtable backups update命令,以添加新的失效日期或保留期限,或将热备份转换为标准备份:gcloud bigtable backups update BACKUP_ID \ --instance=INSTANCE_ID \ --cluster=CLUSTER_ID \ --expiration-date=EXPIRATION_DATE \ --retention-period=RETENTION_PERIOD替换以下内容:
BACKUP_ID:备份的唯一 IDINSTANCE_ID:实例的永久性标识符CLUSTER_ID:集群的永久性标识符EXPIRATION_DATE:未来的日期,在企业版中最多 90 天,在企业 Plus 版中最多 365 天。 该值的格式必须为“祖鲁时”世界协调时间 (UTC) 时间戳,精确到纳秒,例如2019-10-02T15:01:23.045123456Z。RETENTION_PERIOD:对于备份,企业版中最长 90 天,企业 Plus 版中最长 365 天。对于备份副本,最长保留期限为 30 天。该值必须以数字加上m、h或d单位(分钟、小时或天)表示,例如36h或89d。
此命令接受以下可选标志:
--hot-to-standard-time=HOT_TO_STANDARD_TIME:Bigtable 应将备份从热备份转换为标准备份的日期和时间。此值必须至少比备份创建时间晚 24 小时,例如2024-08-02T15:01:23.045123456Z。
您也可以提供相对时长日期和时间,例如
+P30D表示 30 天。如需了解详情,请参阅gcloud topic datetimes。运行
gcloud bigtable instances backups describe命令,验证是否已成功更新过期时间:gcloud bigtable backups describe BACKUP_ID \ --instance=INSTANCE_ID \ --cluster=CLUSTER_ID替换以下内容:
BACKUP_ID:备份的唯一 IDINSTANCE_ID:实例的永久性标识符CLUSTER_ID:集群的永久性标识符
删除备份
如果您想在创建备份副本后删除备份,请检查状态以验证复制操作是否已完成。
控制台
在 Google Cloud 控制台中,前往 Bigtable 实例页面。
点击包含备份的实例。
在左侧导航窗格中,点击备份。
对于需要删除的备份,请展开恢复字样旁的“更多”菜单,然后点击删除。
在确认删除字段中输入备份 ID,然后点击删除。
gcloud
查看备份列表:
gcloud bigtable backups list --instance=INSTANCE_ID将
INSTANCE_ID替换为实例的永久标识符。终端会显示备份列表。
记下备份 ID 及其所在集群的 ID。
运行
gcloud bigtable instances backups delete命令:gcloud bigtable backups delete BACKUP_ID \ --instance=INSTANCE_ID \ --cluster=CLUSTER_ID替换以下内容:
BACKUP_ID:您记下的备份 IDINSTANCE_ID:实例的永久性标识符CLUSTER_ID:您记下的集群 ID
后续步骤
- 详细了解备份。
- 了解如何导入和导出 Bigtable 数据。
- 查看针对云基础架构服务中断设计灾难恢复架构中的 Bigtable 部分。