

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

# 连续备份和 point-in-time恢复 (PITR)
<a name="point-in-time-recovery"></a>

对于某些资源，除了快照备份外，还 AWS Backup 支持连续备份和 point-in-time恢复 (PITR)。

使用**连续备份**，您可以将 AWS Backup支持的资源倒带回您选择的特定时间，精确度在 1 秒钟内（最多可追回 35 天）。连续备份的工作原理是，首先创建资源的完整备份，然后不断备份资源的事务日志。PITR 的工作原理是，访问完整备份，然后将事务日志重放到您要求 AWS Backup 恢复的时间。

或者，可以每小时进行一次**快照备份**。快照备份最多可存储 100 年。可以复制快照进行完整备份或增量备份。

由于连续备份和快照备份具有不同的优势，因此建议您同时使用连续备份和快照备份规则来保护您的资源。

按需备份会立即开始备份您的资源。如果您希望在备份计划中定义的计划时间以外的时间创建备份，则可以选择按需备份。例如，可以随时使用按需备份来测试备份和功能。

[按需备份](https://docs.aws.amazon.com/aws-backup/latest/devguide/recov-point-create-on-demand-backup.html)不能与 PITR 一起使用，因为按需备份会将资源保留在创建备份时其所处的状态，而 PITR 使用连续备份来记录一段时间内的变化。

在 AWS Backup 使用 AWS Backup 控制台或 API 创建备份计划时，您可以选择对支持的资源进行持续备份。连续备份计划会创建一个连续恢复点，每当作业运行时就会更新该恢复点。

**Topics**
+ [Point-in-time 恢复注意事项](#point-in-time-recovery-considerations)
+ [提供连续备份和 PITR 支持的服务](#point-in-time-recovery-supported-services)
+ [查找连续备份](point-in-time-recovery-finding.md)
+ [还原连续备份](point-in-time-recovery-restoring.md)
+ [停止或删除连续备份](point-in-time-recovery-stopping.md)
+ [复制连续备份](point-in-time-recovery-copying.md)
+ [更改保留期](point-in-time-recovery-retention-period.md)
+ [从备份计划中删除唯一的连续备份规则](point-in-time-recovery-removing_rule.md)

## Point-in-time 恢复注意事项
<a name="point-in-time-recovery-considerations"></a>

请注意以下 point-in-time恢复注意事项：
+ **自动回退到快照** - 如果 AWS Backup 无法执行连续备份，则会尝试执行*快照*备份。
+ **不支持按需连续备份** — AWS Backup 不支持按需连续备份，因为按需备份会记录一个时间点，而连续备份的记录会在一段时间内发生变化。
+ **不支持转换到冷存储** - 连续备份不支持转换到冷存储，因为转换到冷存储至少需要 90 天的转换期，而连续备份的最大保留期为 35 天。
+ **还原近期活动** - Amazon RDS 活动允许还原到最近 5 分钟的活动；Amazon S3 允许还原到最近 15 分钟的活动。

**重要**  
单个资源只能包含一个连续备份。请展开下文，了解更多详细信息和最佳实践。

### 在同一资源上重叠连续备份
<a name="point-in-time-recovery-overlapping"></a>

每个资源（例如 Amazon S3 存储桶或 Amazon RDS 数据库）只能包含一个连续备份（恢复点）；额外的连续备份是冗余的。当多个备份策略、计划或规则指示 AWS Backup 为同一资源创建多个连续备份时，以下过程适用：
+ 如果多个规则指定一个存储库中应有多个连续备份，则 AWS Backup 遵循保留期（生命周期）最长的规则，忽略其他规则。
+ 如果多个规则指定多个连续备份应位于多个存储库中，则根据处理的第一条规则 AWS Backup 创建一个连续备份。后续每条为已包含连续备份的资源指定连续备份的规则都将导致快照（定期）备份。

出现重复的连续备份计划时，在连续恢复点之后创建的快照备份的状态可能显示为 `Completed with issues`。此恢复点的详细信息将显示类似于 `“Enabling continuous backup failed, because of the following error: PITR already configured in backup plan: [ARN]”` 的错误。此错误表示已配置至少一个连续备份（用于与包含错误的恢复点不同的恢复点）。只要第一个连续备份（恢复点）的状态为 `COMPLETED`，就可以将其用于时间点恢复（PITR）。

为防止创建存在问题（和错误消息）的意外快照，请查看组织备份策略。如有必要，调整为同一资源创建多个连续备份的备份计划和策略。

在您进行调整，仅对资源进行一次连续备份后，快照备份将根据创建它们的计划的指定生命周期进行保留，然后它们将变为 `EXPIRED` 并删除。持续备份及其 point-in-time恢复能力将根据创建它的规则进行维护。

## 提供连续备份和 PITR 支持的服务
<a name="point-in-time-recovery-supported-services"></a>

AWS Backup 支持以下服务和应用程序的连续备份和 point-in-time恢复：

### Amazon S3
<a name="point-in-time-recovery-S3"></a>

要为 S3 备份启用 PITR，需要将连续备份设置为备份计划的一部分。

虽然源存储桶的原始备份可能已激活 PITR，但跨区域或跨账户目的地副本不具有 PITR，因此从这些副本还原将还原到它们的创建时间（这些副本将是快照副本），而不是还原到指定的时间点。

AWS Backup 因为 S3 依赖于通过亚马逊接收 S3 事件 EventBridge。如果在 S3 存储桶通知设置中禁用此设置，则在关闭此设置的情况下，将停止对这些存储桶的连续备份。有关更多信息，请参阅[使用 EventBridge](https://docs.aws.amazon.com/AmazonS3/latest/userguide/EventBridge.html)。

### RDS
<a name="point-in-time-recovery-rds"></a>

**备份计划：**当 AWS Backup 计划同时创建 Amazon RDS 快照和连续备份时， AWS Backup 将智能地安排您的备份窗口，使其与 Amazon RDS 维护窗口协调以防止冲突。为了进一步防止冲突，不支持手动配置 Amazon RDS 自动备份时段。即使备份计划中的快照备份频率不是每天一次，RDS 也会每天拍摄一次快照。

**设置：**将 AWS Backup 持续备份规则应用于 Amazon RDS 实例后，您将无法在 Amazon RDS 中创建或修改连续备份设置。您必须通过 AWS Backup 控制台或 AWS Backup CLI 进行修改。首次开启自动备份时，如果将数据库实例的备份保留期从 0 更改为非零值，则会发生中断。在维护时段内计划此更改，以最大限度地减少影响。有关启用自动备份的更多信息，请参阅 *Amazon RDS 用户指南*中的[启用自动备份](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.BackupRetention.html)。

**将 Amazon RDS 实例的连续备份控制权转移回 Amazon RDS：**

------
#### [ Console ]

1. 在 [https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 上打开 AWS Backup 控制台。

1. 在导航窗格中，选择**备份计划**。

1. 删除所有包含保护该资源的连续备份的 Amazon RDS 备份计划。

1. 选择**备份保管库**。从备份保管库中删除连续备份恢复点。或者，等待其保留期过去， AWS Backup 从而自动删除恢复点。

完成这些步骤后， AWS Backup 会将资源的持续备份控制权移回 Amazon RDS。

------
#### [ AWS CLI ]

调用 `DisassociateRecoveryPoint` API 操作 。

要了解更多信息，请参阅[DisassociateRecoveryPoint](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_DisassociateRecoveryPoint.html)。

------

**Amazon RDS 连续备份所需的 IAM 权限**
+  AWS Backup 要使用为您的 Amazon RDS 数据库配置连续备份，请验证 API 权限是否`rds:ModifyDBInstance`存在于您的备份计划配置所定义的 IAM 角色中。要还原 Amazon RDS 连续备份，您必须向为还原任务提交的 IAM 角色添加权限 `rds:RestoreDBInstanceToPointInTime`。您可以使用 `AWS Backup default service role` 执行备份和还原。
+ 要描述可用于 point-in-time恢复的时间范围， AWS Backup 请致电`rds:DescribeDBInstanceAutomatedBackups`。在 AWS Backup 控制台中，您必须拥有 AWS Identity and Access Management (IAM) 托管策略中的 `rds:DescribeDBInstanceAutomatedBackups` API 权限。您可以使用 `AWSBackupFullAccess` 或 `AWSBackupOperatorAccess` 托管式策略。这两个策略都具有所有必需的权限。有关更多信息，请参阅[托管策略](https://docs.aws.amazon.com/aws-backup/latest/devguide/access-control.html#managed-policies)。

**保留期：**当您更改 PITR 保留期时，会 AWS Backup [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html)要求应用该更改。

首次在 Amazon RDS 实例上 AWS Backup 启用 PITR（将保留期从 0 更改为非零值）时，该操作将在数据库的下一个维护时段内进行，以防止意外停机。

**场景：**
+ **首次启用 PITR：**首次在 Amazon RDS 实例上启用 PITR 时（无论该实例是由 AWS Backup 管理还是直接配置），更改将排队等候下一个维护时段。 AWS Backup 自动创建快照备份以保持覆盖范围，直到 PITR 变为活动状态。
+ **PITR 保留期更改：**从非零到非零的保留期更改将立即生效，无需重新启动。
+ **PITR 禁用：**将非零保留期更改为零保留期，计划在下一个维护时段进行。

**过渡期间的 Backup 覆盖范围：**
+ 快照备份可在等待维护时段时提供保护
+ 启用 PITR 后，当备份作业运行时，连续恢复点就会变为可用
+ 在过渡期间，备份保护不会出现漏洞
+ 恢复粒度可能仅限于 PITR 完全激活之前的快照间隔

注意：[停止 RDS 实例](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_StopInstance.html)将移除待处理的更改。PITR 配置更改将在下一个备份任务中重新排队，并在随后的维护窗口中应用。

**Amazon RDS 连续备份的副本：**
+ **创建 Amazon RDS 连续备份的**副本 — 您无法创建 Amazon RDS 连续备份的副本，因为 AWS Backup 对于 Amazon RDS，不允许复制事务日志。而是 AWS Backup 创建快照并按照备份计划中指定的频率进行复制。

**恢复：**您可以使用 Amazon RDS AWS Backup 或 Amazon RDS 执行 point-in-time恢复。有关 AWS Backup 控制台的说明，请参阅[恢复 Amazon RDS 数据库](https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-rds.html)。有关 Amazon RDS 说明，请参阅《Amazon RDS 用户指南》**中的[将数据库实例还原到指定时间](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIT.html)。

**提示**  
设置为 `Always On` 的多可用区数据库实例不应将备份保留期设置为 0。如果出现错误，请使用 AWS CLI 命令`disassociate-recovery-point`代替`delete-recovery-point`，然后在 Amazon RDS 设置中将保留设置更改为 1。

有关使用 Amazon RDS 的一般信息，请参阅 [Amazon RDS 用户指南](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html)。

#### RDS 和 Aurora PITR 恢复的 CLI 示例
<a name="rds-pitr-cli-examples"></a>

以下示例演示如何使用带有元数据参数的 AWS Backup CLI 将 RDS 和 Aurora 数据库还原到某个时间点。

**示例：使用元数据将 RDS 数据库还原到某个时间点**  


```
aws backup start-restore-job \
    --recovery-point-arn arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45 \
    --metadata '{"DBInstanceIdentifier":"restored-db-instance","Engine":"mysql","UseLatestRestorableTime":"false","RestoreTime":"2024-01-15T10:30:00Z"}' \
    --iam-role-arn arn:aws:iam::123456789012:role/service-role/AWSBackupDefaultServiceRole \
    --resource-type RDS \
    --copy-source-tags-to-restored-resource
```

**示例：将 Aurora 集群还原到某个时间点**  


```
aws backup start-restore-job \
    --recovery-point-arn arn:aws:backup:us-east-1:123456789012:recovery-point:2FC4C6F8-0FC1-546B-B91C-209C599C1D56 \
    --metadata '{"DBClusterIdentifier":"restored-aurora-cluster","Engine":"aurora-mysql","UseLatestRestorableTime":"true"}' \
    --iam-role-arn arn:aws:iam::123456789012:role/service-role/AWSBackupDefaultServiceRole \
    --resource-type Aurora \
    --copy-source-tags-to-restored-resource
```

**RDS PITR 恢复的元数据参数**  
RDS 和 Aurora PITR 恢复支持以下元数据参数：
+ **DBInstance标识符** (RDS) 或**DBCluster标识符** (Aurora)-必填。已还原的数据库的名称。
+ **发动机**-必填。数据库引擎（例如 mysql、postgres、aurora-mysql、aurora-postgresql）。
+ **UseLatestRestorableTime** – 可选。设置为 “true” 以恢复到最新的可恢复时间，或设置为 “false” 以指定。 RestoreTime
+ **RestoreTime** – 可选。要恢复到的日期和时间（ISO 8601 格式）。如果为 “假” UseLatestRestorableTime ，则为必填项。

**将标签复制到已恢复的资源**  
使用该`--copy-source-tags-to-restored-resource`标志将标签从源数据库复制到还原的数据库。这样可以确保基于标签的访问控制和成本分配标签得以保留。

有关 RDS PITR 恢复参数的完整详细信息，请参阅：
+ DBInstanceToPointInTime在 Amazon RDS API 参考中@@ [恢复](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html)
+ DBClusterToPointInTime在 Amazon RDS API 参考中@@ [恢复](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBClusterToPointInTime.html)

### Aurora
<a name="pitr-aurora"></a>

要启用对您的 Aurora 资源的连续备份，请参阅本页第一部分中的步骤。

将 Aurora 集群还原到某个时间点的过程是[还原 Aurora 集群快照的步骤的变体](https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-aur.html)。

当您进行时间点还原时，控制台会显示**还原时间**部分。请参阅本页下方[使用连续备份](https://docs.aws.amazon.com/aws-backup/latest/devguide/point-in-time-recovery.html#point-in-time-recovery-working-with)中的*还原连续备份*。

### Amazon EC2 实例上的 SAP HANA
<a name="point-in-time-recovery-saphana"></a>

您可以进行[连续备份](https://docs.aws.amazon.com/aws-backup/latest/devguide/point-in-time-recovery.html)，这可以与 point-in-time恢复 (PITR) 一起使用（请注意，按需备份会将资源保留在拍摄时的状态；而 PITR 使用连续备份来记录一段时间内的变化）。

使用连续备份，可以还原 EC2 实例上的 SAP HANA 数据库，方法是将其倒回您选择的特定时间，精确到 1 秒（最多回溯 35 天）。连续备份的工作原理是，首先创建资源的完整备份，然后不断备份资源的事务日志。PITR 恢复的工作原理是访问您的完整备份，然后将事务日志重放到您要求恢复的时间。 AWS Backup 

在 AWS Backup 使用 AWS Backup 控制台或 API 创建备份计划时，您可以选择连续备份。

**使用控制台启用连续备份**

1. 登录 AWS 管理控制台，然后在 [https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 上打开 AWS Backup 控制台。

1. 在导航窗格中，选择**备份计划**，然后选择**创建备份计划**。

1. 在**备份计划**下，选择**添加备份计划**。

1. 在**备份规则配置**部分，选择**为支持的资源启用连续备份**。

禁用 SAP HANA 数据库备份的 [PITR（point-in-time恢复）](https://docs.aws.amazon.com/aws-backup/latest/devguide/point-in-time-recovery.html)后，日志将继续发送到中， AWS Backup 直到恢复点到期（状态等于`EXPIRED)`。您可以更改到 SAP HANA 中的替代日志备份位置，以停止向 AWS Backup传输日志。

状态为的连续恢复点`STOPPED`表示连续恢复点已中断；也就是说，从 SAP HANA 传输到 AWS Backup 的显示数据库增量更改的日志存在间隔。在此时间范围间隙内出现的恢复点状态为 `STOPPED.`。

有关在连续备份（恢复点）的还原作业期间可能遇到的问题，请参阅本指南的 [SAP HANA 还原故障排除](https://docs.aws.amazon.com/aws-backup/latest/devguide/saphana-restore.html#saphanarestoretroubleshooting)部分。