

# 使用 AWS Backup 将数据库集群还原到指定时间
<a name="aurora-pitr-bkp"></a>

您可以使用 AWS Backup 管理您的自动备份，然后将其还原到指定时间。为此，您需要在 AWS Backup 中创建备份计划，并将您的数据库集群分配为资源。然后，您可以在备份规则中为 PITR 启用连续备份。有关备份计划和备份规则的更多信息，请参阅 [https://docs.aws.amazon.com/aws-backup/latest/devguide](https://docs.aws.amazon.com/aws-backup/latest/devguide)。

## 在 AWS Backup 中启用连续备份
<a name="aurora-pitr-bkp.enable"></a>

您可以在备份规则中启用连续备份。

**为 PITR 启用连续备份**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 AWS Backup 控制台：[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup)。

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

1. 在**备份计划名称**下，选择用于备份数据库集群的备份计划。

1. 在**备份规则**部分下，选择**添加备份规则**。

   将显示**添加备份规则**页面。

1. 选中**启用连续备份以实现时间点故障恢复（PITR）**复选框。  
![\[启用连续备份以实现时间点故障恢复（PITR）。\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/AuroraUserGuide/images/add_backup_rule_continuous_v2.png)

1. 根据需要选择其他设置，然后选择**添加备份规则**。

## 从 AWS Backup 中的连续备份还原
<a name="aurora-pitr-bkp.restore"></a>

您从备份保管库还原到指定时间。

### 控制台
<a name="aurora-pitr-bkp.restore.CON"></a>

可以使用 AWS 管理控制台 将数据库集群还原到指定时间。

**从 AWS Backup 中的连续备份还原**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 AWS Backup 控制台：[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup)。

1. 在导航窗格中，选择**备份保管库**。

1. 例如，选择包含连续备份的备份保管库，例如**默认**。

   将显示备份保管库详细信息页面。

1. 在**恢复点**下，选择自动备份的恢复点。

   它的备份类型为**连续**，且名称带有 `continuous:cluster-AWS-Backup-job-number`。

1. 对于**操作**，选择**还原**。

   将显示**还原备份**页面。  
![\[时间点故障恢复（PITR）的“还原备份”页面。\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/AuroraUserGuide/images/backup_vault_pitr.png)

1. 对于**还原到时间点**，请选择**指定日期和时间**以还原到特定的时间点。

1. 根据需要选择其他设置以还原数据库集群，然后选择**还原备份**。

   将显示**任务**页面，其中显示**还原任务**窗格。页面顶部的消息提供了有关还原作业的信息。

还原数据库集群后，必须向其添加主（写入器）数据库实例。要为数据库集群创建主实例，请调用 [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) AWS CLI 命令。包括数据库群集的名称作为 `--db-cluster-identifier` 参数值。

### CLI
<a name="aurora-pitr-bkp.restore.CLI"></a>

请使用 [start-restore-job](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/backup/start-restore-job.html) AWS CLI 命令将数据库集群还原到指定时间。以下参数为必需参数：
+ `--recovery-point-arn` – 要从中还原的恢复点的 Amazon 资源名称（ARN）。
+ `--resource-type` – 使用 `Aurora`。
+ `--iam-role-arn` – 您用于 AWS Backup 操作的 IAM 角色的 ARN。
+ `--metadata` – 用于还原数据库集群的元数据。以下参数为必需参数：
  + `DBClusterIdentifier`
  + `Engine`
  + `RestoreToTime` 或 `UseLatestRestorableTime`

以下示例说明如何将数据库集群还原到指定时间。

```
aws backup start-restore-job \
--recovery-point-arn arn:aws:backup:eu-central-1:123456789012:recovery-point:continuous:cluster-itsreallyjustanexample1234567890-487278c2 \
--resource-type Aurora \
--iam-role-arn arn:aws:iam::123456789012:role/service-role/AWSBackupDefaultServiceRole \
--metadata '{"DBClusterIdentifier":"backup-pitr-test","Engine":"aurora-mysql","RestoreToTime":"2023-09-01T17:00:00.000Z"}'
```

以下示例说明如何将数据库集群还原到最新的可还原时间。

```
aws backup start-restore-job \
--recovery-point-arn arn:aws:backup:eu-central-1:123456789012:recovery-point:continuous:cluster-itsreallyjustanexample1234567890-487278c2 \
--resource-type Aurora \
--iam-role-arn arn:aws:iam::123456789012:role/service-role/AWSBackupDefaultServiceRole \
--metadata '{"DBClusterIdentifier":"backup-pitr-latest","Engine":"aurora-mysql","UseLatestRestorableTime":"true"}'
```

还原数据库集群后，必须向其添加主（写入器）数据库实例。要为数据库集群创建主实例，请调用 [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) AWS CLI 命令。包括数据库群集的名称作为 `--db-cluster-identifier` 参数值。