

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 將 Amazon RDS 的資料庫執行個體還原至指定時間
<a name="USER_PIT"></a>

您可將資料庫執行個體還原至任何特定時間點，建立新的資料庫執行個體，而無須修改來源資料庫執行個體。

將資料庫執行個體還原至某個時間點時，您可以選擇預設的 Virtual Private Cloud (VPC) 安全群組。或者，可以將自訂 VPC 安全群組套用至您的資料庫執行個體。

還原的資料庫執行個體會自動與預設資料庫參數和選項群組產生關聯。不過，您可以在還原期間指定要套用的自訂參數群組和選項群組。

如果在請求中提供標籤，則提供的標籤會套用至還原的資料庫執行個體。如果請求中未提供標籤，且來源資料庫執行個體處於作用中區域且具有標籤，RDS 會將來源資料庫執行個體的最新標籤新增至還原的資料庫執行個體。

RDS 每五分鐘會將資料庫執行個體的交易日誌上傳至 Amazon S3。若要查看資料庫執行個體的最新可還原時間，請使用 AWS CLI [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) 命令，並查看資料庫執行個體 `LatestRestorableTime` 欄位傳回的值。若要在 Amazon RDS 主控台中查看每個資料庫執行個體的最新可還原時間，請選擇**自動備份**。

您可以還原至備份保留期間內的任何時間點。若要查看每個資料庫執行個體的最早可還原時間，請在 Amazon RDS 主控台中選擇**自動備份**。

![\[自動備份\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/automated-backups.png)


**注意**  
建議您還原到相同或類似的資料庫執行個體大小，而且如果使用佈建 IOPS 儲存體做為來源資料庫執行個體，則包括 IOPS。例如，如果您選擇 IOPS 值不相容的資料庫執行個體大小，則可能會收到錯誤訊息。

如需使用 RDS 延長支援版本還原資料庫執行個體的詳細資訊，請參閱 [使用 Amazon RDS 延伸支援還原資料庫執行個體或多可用區域資料庫叢集](extended-support-restoring-db-instance.md)。

從時間點還原時，有些 Amazon RDS 資料庫引擎有其特殊考量。
+ 如果您對 Amazon RDS for Db2 資料庫執行個體使用密碼身分驗證，則日誌中不會擷取使用者管理動作 (包括 `rdsadmin.add_user`)。這些動作需要完整快照備份。

  使用 BYOL 模式時，您的 RDS for Db2 資料庫執行個體必須與包含 IBM Site ID 和 IBM Customer ID 的自訂參數群組相關聯。否則，將資料庫執行個體還原至特定時間點的嘗試將會失敗。您的 Amazon RDS for Db2 資料庫執行個體也必須與 AWS License Manager 自我管理授權相關聯。如需詳細資訊，請參閱[使用 Db2 的自帶授權 (BYOL)](db2-licensing.md#db2-licensing-options-byol)。

  透過 AWS Marketplace 模型取得 Db2 授權後，您需要針對要使用的特定IBM Db2版本啟用 AWS Marketplace 訂閱。如果您尚未擁有，請針對該 IBM Db2 版本[在 AWS Marketplace中訂閱 Db2](db2-licensing.md#db2-marketplace-subscribing-registering)。如需詳細資訊，請參閱[透過 的 Db2 授權 AWS Marketplace](db2-licensing.md#db2-licensing-options-marketplace)。
+ 將 RDS for Oracle 資料庫執行個體還原至時間點時，您可以為還原的資料庫執行個體指定不同的資料庫引擎、授權模式和 DBName (SID)。您也可以指定 RDS 應在 AWS Secrets Manager中管理主要使用者密碼。如需詳細資訊，請參閱[使用 管理主要使用者密碼的概觀 AWS Secrets Manager](rds-secrets-manager.md#rds-secrets-manager-overview)。
+ 當您將 Microsoft SQL Server 資料庫執行個體還原至時間點時，該執行個體內的每個資料庫都會還原至執行個體內每個其他資料庫 1 秒內的時間點。可能無法一致地還原橫跨執行個體內多個資料庫的交易。
+ 對於 SQL Server 資料庫執行個體，不支援 `OFFLINE`、`EMERGENCY` 和 `SINGLE_USER` 模式。將任何資料庫設為其中一種模式會導致整個資料庫執行個體的最新可還原時間停止向前移動。
+ 部分動作 (例如變更 SQL Server 資料庫的復原模型) 可能中斷用於 point-in-time 恢復之日誌的順序。在某些情況下，Amazon RDS 可以偵測到這個問題，並防止最近的可還原時間繼續前進。在其他情況下，例如當 SQL Server 資料庫使用 `BULK_LOGGED` 復原模式時，不會偵測到記錄順序中的中斷。如果日誌順序發生中斷，可能無法將 SQL Server 資料庫執行個體還至時間點。基於這些原因，Amazon RDS 不支援變更 SQL Server 資料庫的復原模型。

您也可以使用 AWS Backup 來管理 Amazon RDS 資料庫執行個體的備份。如果您的資料庫執行個體與 中的備份計畫相關聯 AWS Backup，則該備份計畫會用於point-in-time復原。使用 建立的備份名稱結尾 AWS Backup 為 `awsbackup:AWS-Backup-job-number`。如需 的詳細資訊 AWS Backup，請參閱 [https://docs.aws.amazon.com/aws-backup/latest/devguide](https://docs.aws.amazon.com/aws-backup/latest/devguide)。

**注意**  
本主題中的資訊適用於 Amazon RDS。如需還原 Amazon Aurora 資料庫叢集的資訊，請參閱[將資料庫叢集還原至指定的時間](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-pitr.html)。

您可以使用 AWS CLI、 或 RDS API AWS 管理主控台將資料庫執行個體還原至某個時間點。

**注意**  
您無法在還原資料庫執行個體時減少儲存數體的數量。當您嘗試增加配置儲存時，其必須至少是 10%。如果您嘗試以低於 10% 的值增加該值，便會發生錯誤。您無法在還原 RDS for SQL Server 資料庫執行個體時增加已配置的儲存體。

## 主控台
<a name="USER_PIT.CON"></a>

**將資料庫執行個體還原至指定時間**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/) 的 Amazon RDS 主控台。

1. 在導覽窗格中，選擇 **Automated backups** (自動備份)。

   自動備份顯示在 **Current Region** (目前區域) 索引標籤上。

1. 選擇您想要還原的資料庫執行個體。

1. 針對 **Actions** (動作)，選擇 **Restore to point in time** (還原至時間點)。

   **Restore to point in time (還原到時間點)** 視窗隨即出現。

1. 選擇 **Latest restorable time (最近的可還原時間)** 以還原最近一次的可能時間，或選擇 **Custom (自訂)** 以選擇一個時間。

   如果您選擇 **Custom (自訂)**，請輸入您希望執行個體叢集還原到什麼日期和時間。
**注意**  
會以您的當地時區顯示時間，根據國際標準時間 (UTC) 的時差來表示。例如，UTC-5 是東部標準時間/中部日光節約時間。

1. 對於 **DB Instance Identifier** (資料庫執行個體識別碼)，輸入目標還原資料庫執行個體的名稱。名稱必須是唯一的。

1. 視需要選擇其他選項，例如資料庫執行個體類別、儲存體以及是否要使用儲存體自動擴充功能。

   如需每項設定的相關資訊，請參閱 [資料庫執行個體的設定](USER_CreateDBInstance.Settings.md)。

1. 選擇 **Restore to point in time (還原至時間點)**。

## AWS CLI
<a name="USER_PIT.CLI"></a>

若要將資料庫執行個體還原至指定的時間，請使用 [restore-db-instance-to-point-in-time](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html) AWS CLI 命令來建立新的資料庫執行個體。此範例也會設定配置的儲存體大小，並啟用儲存體自動擴展。

此操作支援資源標記。使用 `--tags` 選項時，會忽略來源資料庫執行個體標籤，並使用提供的標籤。否則，會使用來源執行個體中的最新標籤。

您可以指定其他設定。如需每項設定的相關資訊，請參閱 [資料庫執行個體的設定](USER_CreateDBInstance.Settings.md)。

**Example**  
在 Linux、macOS 或 Unix 中：  

```
1. aws rds restore-db-instance-to-point-in-time \
2.     --source-db-instance-identifier mysourcedbinstance \
3.     --target-db-instance-identifier mytargetdbinstance \
4.     --restore-time 2017-10-14T23:45:00.000Z \
5.     --allocated-storage 100 \
6.     --max-allocated-storage 1000
```
在 Windows 中：  

```
1. aws rds restore-db-instance-to-point-in-time ^
2.     --source-db-instance-identifier mysourcedbinstance ^
3.     --target-db-instance-identifier mytargetdbinstance ^
4.     --restore-time 2017-10-14T23:45:00.000Z ^
5.     --allocated-storage 100 ^
6.     --max-allocated-storage 1000
```

**Example**  
下列範例顯示將執行個體還原至某個時間點時新增磁碟區。  
針對 Linux、macOS 或 Unix：  

```
 1. aws rds restore-db-instance-to-point-in-time \
 2.      --source-db-instance-identifier my-asv-instance \
 3.      --target-db-instance-identifier my-pitr-instance \
 4.      --use-latest-restorable-time \
 5.      --additional-storage-volumes '[{ \
 6.              "VolumeName": "rdsdbdata2", \
 7.              "StorageType":"gp3", \
 8.              "AllocatedStorage": 5000, \
 9.              "IOPS": 12000 \
10.          }]'
```
在 Windows 中：  

```
 1. aws rds restore-db-instance-to-point-in-time ^
 2.      --source-db-instance-identifier my-asv-instance ^
 3.      --target-db-instance-identifier my-pitr-instance ^
 4.      --use-latest-restorable-time ^
 5.      --additional-storage-volumes '[{ ^
 6.              "VolumeName": "rdsdbdata2", ^
 7.              "StorageType":"gp3", ^
 8.              "AllocatedStorage": 5000, ^
 9.              "IOPS": 12000 ^
10.          }]'
```

## RDS API
<a name="USER_PIT.API"></a>

若要將資料庫執行個體還原至指定的時間，請搭配下列參數呼叫 Amazon RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html) 操作：
+ `SourceDBInstanceIdentifier`
+ `TargetDBInstanceIdentifier`
+ `RestoreTime`