Amazon Redshift Serverless 还原 - Amazon Backup
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

Amazon Redshift Serverless 还原

您可以使用 Amazon Backup 控制台或恢复数据库或表的手动快照 Amazon CLI。

Redshift Serverless, Amazon Backup 支持数据仓库快照的可互换恢复。这意味着您可以将 Redshift Serverless 备份还原到 Amazon Redshift 预置集群,或者将预置备份还原到 Redshift Serverless 命名空间。这仅适用于完整数据库还原,不适用于单个表还原。

Redshift Serverless 的还原功能
还原功能 命名空间 单表
快照类型 手动 手动
所需信息
  • 源快照

  • 目标命名空间

  • 工作组

  • 源快照

  • 源数据库

  • 源表名称

  • 目标数据库

  • 新表名称

还原目标效果 通过覆盖现有数据的破坏性还原还原到现有命名空间 还原到新表
可互换还原?

可以。

  • Redshift Serverless 备份可以还原到 Amazon Redshift 预置集群。

  • Amazon Redshift 预置备份可以还原到 Redshift Serverless 集群。

不支持。

有关配置的更多信息,请参阅《Amazon Redshift 管理指南》中的快照和恢复点

还原之前的注意事项

在启动还原作业之前,请先查看以下信息:

配置

还原 Redshift Serverless 快照时,您可以选择要将所有数据库或单个表还原到的目标命名空间。

将快照中的数据库还原到 Serverless 命名空间时,这是破坏性还原。这意味着当您还原到目标还原命名空间时,该命名空间中以前存在的所有数据都将被覆盖。

还原单个表时,这不是破坏性还原。要还原表,请指定工作组、快照、源数据库、源表、目标还原命名空间和新表名称。

权限

所需的权限取决于目标数据仓库(即您将还原数据库或表的命名空间或预置集群)。下表可以帮助您确定要使用的权限、角色和策略。有关管理 IAM 策略的更多信息,请参阅 Amazon Redshift 中的 Identity and Access Management

还原操作所需的权限和角色
还原目标 所需的权限 IAM 角色和策略
Amazon Redshift 预置集群 redshift:RestoreFromClusterSnapshot AWSBackupServiceRolePolicyForRestores 包含此权限;它可用于 aws backup start-restore-job
Redshift Serverless 命名空间 redshift-serverless:RestoreFromSnapshot

您必须将此权限添加到用于调用 aws backup start-restore-job 的角色和策略中。

由于这是一项破坏性还原作业,因此无法使用还原的服务角色策略。

Redshift Serverless 还原步骤

按照以下步骤使用控制台恢复 Redshift 无服务器备份, Amazon Backup 或者: Amazon CLI

Console
  1. https://console.aws.amazon.com/backup 上打开 Amazon Backup 控制台。

  2. 在导航窗格中,选择设置以及要还原的 Redshift Serverless 资源 ID。

  3. 资源详细信息页面上,在恢复点窗格中选择恢复点 ID,然后选择还原

  4. 还原选项窗格中,选择还原整个数据仓库或单个表。

  5. 目标数据仓库配置窗格中,选择目的地目标。

    • 对于完整数据仓库还原,请选择 Amazon Redshift 预置集群或 Redshift Serverless 命名空间。

    • 对于单个表还原,请指定源快照、数据库、架构、表名称和目标详细信息。

  6. 为作业选择 IAM 还原角色。如果不使用默认角色,请确保所选角色包含 iam:PassRole 权限。

Amazon CLI

使用 aws backup start-restore-job 命令。

Amazon Backup 与 Redshift Serverless 合作编排恢复作业。CLI 命令将在前面加上 aws backup,但也将包含与 Redshift Serverless 或 Amazon Redshift 相关的元数据。

必需和可选的元数据取决于您是要还原整个数据仓库还是单个表。

例 用于还原到 Serverless 命名空间的 start-restore-job 模板:
aws backup start-restore-job \ --recovery-point-arn "arn:aws:backup:region:account:snapshot:name--iam-role-arn "arn:aws:iam:account:role/role-name" \ --metadata \ --resource-type Redshift Serverless \ --region Region \ --endpoint-url URL
例 用于还原到 Serverless 命名空间的 start-restore-job 示例:
aws backup start-restore-job \ --recovery-point-arn "arn:aws:redshift-serverless:us-east-1:123456789012:snapshot/a12bc34d-567e-890f-123g-h4ijk56l78m9" \ --iam-role-arn "arn:aws:iam::974288443796:role/Backup-Redshift-Role" \ --metadata 'RestoreType=NAMESPACE_RESTORE,NamespaceIdentifier=redshift-namespace-1-restore' \ --resource-type "RedshiftServerless" \ --region us-west-2

启动还原作业后,使用 describe-restore-job 来监控进度。