

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

还原数据库集群后，必须向其添加主（写入器）数据库实例。要为数据库集群创建主实例，请调用 [create-db-instance](https://docs.amazonaws.cn/cli/latest/reference/rds/create-db-instance.html) Amazon 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) Amazon CLI 命令将数据库集群还原到指定时间。以下参数为必需参数：
+ `--recovery-point-arn` – 要从中还原的恢复点的 Amazon 资源名称（ARN）。
+ `--resource-type` – 使用 `Aurora`。
+ `--iam-role-arn` – 您用于 Amazon 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.amazonaws.cn/cli/latest/reference/rds/create-db-instance.html) Amazon CLI 命令。包括数据库群集的名称作为 `--db-cluster-identifier` 参数值。