

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

# 備份、還原和匯出資料
<a name="CHAP_CommonTasks.BackupRestore"></a>

本節說明如何備份、還原和匯出 Amazon RDS 資料庫執行個體或多可用區域資料庫叢集的資料。

如需備份 Amazon RDS 資料庫執行個體或多可用區域資料庫叢集的詳細資訊，請參閱下列主題。
+ [備份簡介](USER_WorkingWithAutomatedBackups.md)
+ [管理自動備份](USER_ManagingAutomatedBackups.md)
+ [管理手動備份](USER_ManagingManualBackups.md)

如需還原 Amazon RDS 資料庫執行個體或多可用區域資料庫叢集的詳細資訊，請參閱 [還原至資料庫執行個體](USER_RestoreFromSnapshot.md)。

如需複製、共用或匯出資料庫快照的詳細資訊，請參閱下列主題。
+ [複製 Amazon RDS 的資料庫快照](USER_CopySnapshot.md)
+ [共用 Amazon RDS 的資料庫快照](USER_ShareSnapshot.md)
+ [為 Amazon RDS 將資料庫快照資料匯出至 Amazon S3](USER_ExportSnapshot.md)

如需檢視由 AWS Backup 管理之自動備份的詳細資訊，請參閱 [使用 AWS Backup 來管理 Amazon RDS 的自動備份](AutomatedBackups.AWSBackup.md)。

# 備份簡介
<a name="USER_WorkingWithAutomatedBackups"></a>

Amazon RDS 會在資料庫執行個體的備份時段建立並儲存資料庫執行個體或多可用區域資料庫叢集的自動備份。RDS 會建立資料庫執行個體的儲存體磁碟區快照，因此會備份整個資料庫執行個體，而不只是個別的資料庫。RDS 會根據您指定的備份保留期儲存資料庫執行個體的自動備份。如有需要，您可將資料庫執行個體復原至備份保留期間的任何時間點。

自動備份會遵循下列規則：
+ 您的資料庫執行個體必須處於 `available` 狀態才能進行自動備份。當您的資料庫執行個體處於 `available` 以外的狀態，例如，`storage_full`，自動備份不會發生。
+ 當相同資料庫在相同 AWS 區域 中執行資料庫快照複製時，不會進行自動備份。

您也可以建立資料庫快照以手動備份您的資料庫執行個體。如需手動建立資料庫快照的詳細資訊，請參閱 [為 Amazon RDS 的單一可用區域資料庫執行個體建立資料庫快照](USER_CreateSnapshot.md)。

快照和備份功能支援多磁碟區組態。所有備份操作都包含主要磁碟區和任何其他儲存磁碟區。快照會擷取整個資料庫儲存組態。Point-in-time(PITR) 適用於所有儲存磁碟區。

資料庫執行個體的第一個快照會包含完整的資料庫資料。相同資料庫的後續快照均採用遞增處理，這表示系統僅會儲存上次執行快照後有所變更的資料。

您可以複製自動和手動資料庫快照，並共用手動資料庫快照。如需複製資料庫快照的詳細資訊，請參閱[複製 Amazon RDS 的資料庫快照](USER_CopySnapshot.md)。如需共用資料庫快照的詳細資訊，請參閱[共用 Amazon RDS 的資料庫快照](USER_ShareSnapshot.md)。

## 備份儲存體
<a name="USER_WorkingWithAutomatedBackups.BackupStorage"></a>

每個 的 Amazon RDS 備份儲存 AWS 區域 體是由該區域的自動備份和手動資料庫快照組成。總備份儲存空間等於該區域所有備份的儲存總和。將資料庫快照移到其他區域會增加目的地區域的備份儲存。備份儲存在 Amazon S3中。

如需備份儲存成本的詳細資訊，請參閱 [Amazon RDS 定價](https://aws.amazon.com/rds/pricing/)。

如果您選擇在刪除資料庫執行個體時保留自動備份，則自動備份會保留整個保留期間。如果您在刪除資料庫執行個體時沒有選擇 **Retain automated backups (保留自動備份)**，則所有自動備份會隨著資料庫執行個體一起刪除。自動備份在刪除之後就無法復原。如果您選擇讓 Amazon RDS 建立最終的資料庫快照，然後再刪除您的資料庫執行個體，您可以使用它來恢復您的資料庫執行個體。或者，您可以使用先前建立的手動快照。系統並不會刪除手動快照。每個區域最多可以有 100 個手動快照。

# 管理自動備份
<a name="USER_ManagingAutomatedBackups"></a>

本節說明如何管理資料庫執行個體或多可用區域資料庫叢集的自動備份。

**Topics**
+ [備份時段](#USER_WorkingWithAutomatedBackups.BackupWindow)
+ [Backup retention period (備份保留期間)](USER_WorkingWithAutomatedBackups.BackupRetention.md)
+ [啟用自動備份](USER_WorkingWithAutomatedBackups.Enabling.md)
+ [保留自動備份](USER_WorkingWithAutomatedBackups.Retaining.md)
+ [刪除保留的自動備份](USER_WorkingWithAutomatedBackups-Deleting.md)
+ [利用不受支援的 MySQL 儲存引擎進行自動備份](Overview.BackupDeviceRestrictions.md)
+ [利用不受支援的 MariaDB 儲存引擎進行自動備份](Overview.BackupDeviceRestrictionsMariaDB.md)
+ [將自動備份複寫至另一個備份 AWS 區域](USER_ReplicateBackups.md)

## 備份時段
<a name="USER_WorkingWithAutomatedBackups.BackupWindow"></a>

自動備份會每天在偏好的備份時段內執行。如果備份需要的時間超過所分配的備份時段，備份會在時段結束後繼續執行直到完成。備份時段不可與每週的資料庫執行個體或多可用區域資料庫叢集維護時段重疊。

在自動備份期間，儲存輸入/輸出可能會在備份程序初始化時短暫暫停 (通常在幾秒內)。在備份異地同步備份部署時，可能會有幾分鐘的延遲增加情形。若為 MariaDB、MySQL、Oracle 和 PostgreSQL，在備份異地同步備份部署期間，您的主要執行個體上不會暫停輸入/輸出活動，因為備份取自於待命執行個體。若為 SQL Server，在備份單一可用區和多可用區域部署期間會短暫停 I/O 活動，因為備份取自於主要執行個體。對於 Db2，即使備份是從待命執行個體取得的，I/O 活動在備份期間仍會短暫暫停。

如果資料庫執行個體或叢集在應啟動備份時的工作負載繁重，有時候可能會略過自動備份。如果略過備份，您仍然可以執行 point-in-time 恢復 (PITR)，而且在下一個備份時段仍會嘗試備份。如需 PITR 的詳細資訊，請參閱 [將 Amazon RDS 的資料庫執行個體還原至指定時間](USER_PIT.md)。

當您建立資料庫執行個體或多可用區域資料庫叢集時，若未指定偏好的備份時段，Amazon RDS 將會指派預設 30 分鐘的備份時段。此時段是從每個時段的 8 小時時段中隨機選取 AWS 區域。下表列出指派 AWS 區域 預設備份時段的每個 的時間範圍。


****  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/USER_ManagingAutomatedBackups.html)

# Backup retention period (備份保留期間)
<a name="USER_WorkingWithAutomatedBackups.BackupRetention"></a>

您可以在建立或還原資料庫執行個體或多可用區域資料庫叢集時設定備份保留期。如果您使用 Amazon RDS API 或 建立資料庫執行個體， AWS CLI 而且未設定備份保留期，則預設備份保留期為一天。如果您使用主控台建立資料庫執行個體，則預設的備份保留期間為七天。

在您建立資料庫執行個體或叢集之後，可修改備份保留期。您可以將資料庫執行個體的備份保留期設為 0 到 35 天。將備份保留期設為 0 會停用自動備份。對於多可用區域資料庫叢集，您可以將備份保留期間設定為 1 到 35 天。手動快照限制 (每個區域 100 個) 不適用於自動備份。

在還原操作期間，您可以選擇為資料庫執行個體或多可用區域資料庫叢集指定備份保留期間。當您未明確設定此值時，還原的資料庫會從來源快照或執行個體繼承備份保留期間。請注意，此繼承行為對於還原操作是唯一的 - 建立新資料庫時，系統會改為套用預設保留期間。

**重要**  
如果您將資料庫執行個體的備份保留期間從 0 變更為非零值，或從非零值變更為 0，將會發生中斷。

計算備份保留期間時，RDS 不會納入在 `stopped` 狀態花費的時間。停止資料庫執行個體或叢集時，不會建立自動備份。如果資料庫執行個體已停止，備份的保留時間可超過備份保留期間。

# 啟用自動備份
<a name="USER_WorkingWithAutomatedBackups.Enabling"></a>

如果您的資料庫執行個體未啟用自動備份，您可以隨時啟用。您可以將備份保留期間設定為正的非零值以啟用自動備份。當自動備份啟用時，資料庫執行個體會離線，並立即建立備份。

**注意**  
如果您在 中管理備份 AWS Backup，則無法啟用自動備份。如需詳細資訊，請參閱[使用 AWS Backup 來管理 Amazon RDS 的自動備份](AutomatedBackups.AWSBackup.md)。

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

**立即啟用自動備份**

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

1. 在導覽窗格中選擇**資料庫**，然後選擇您要修改的資料庫執行個體或多可用區域資料庫叢集。

1. 選擇 **Modify** (修改)。

1. 針對**備份保留期間**，選擇非零正值，例如三天。

1. 選擇 **Continue (繼續)**。

1. 選擇 **Apply immediately** (立即套用)。

1. 選擇**修改資料庫執行個體**或**修改叢集**，以儲存您的變更並啟用自動備份。

## AWS CLI
<a name="USER_WorkingWithAutomatedBackups.Enabling.CLI"></a>

若要啟用自動備份，請使用 AWS CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) 或 [modify-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster.html) 命令。

包含以下參數：
+ `--db-instance-identifier` (或多可用區域資料庫叢集的 `--db-cluster-identifier`)
+ `--backup-retention-period`
+ `--apply-immediately` 或 `--no-apply-immediately` \$1

在以下範例中，我們將備份保留期間設定為三天來啟用自動備份。變更會立即套用。

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

```
aws rds modify-db-instance \
    --db-instance-identifier my_db_instance  \
    --backup-retention-period 3 \
    --apply-immediately
```
在 Windows 中：  

```
aws rds modify-db-instance ^
    --db-instance-identifier my_db_instance  ^
    --backup-retention-period 3 ^
    --apply-immediately
```

## RDS API
<a name="USER_WorkingWithAutomatedBackups.Enabling.API"></a>

若要啟用自動備份，請使用 RDS API [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) 或 [ModifyDBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBCluster.html) 操作，並搭配下列必要參數：
+ `DBInstanceIdentifier` 或 `DBClusterIdentifier`
+ `BackupRetentionPeriod`

## 檢視自動備份
<a name="USER_WorkingWithAutomatedBackups.viewing"></a>

若要檢視自動備份，請在導覽窗格中選擇 **Automated backups (自動備份)**。若要檢視與自動備份相關聯的個別快照，請在導覽窗格中選擇 **Snapshots (快照)**。或者，您可以描述與自動備份相關聯的個別快照。您可以從那裡的其中一個快照直接還原資料庫執行個體。

自動快照名稱會依循 `rds:<database-name>-yyyy-mm-dd-hh-mm` 模式，其中 `yyyy-mm-dd-hh-mm` 代表建立快照的日期和時間。

若要使用 描述現有資料庫執行個體的自動備份 AWS CLI，請使用下列其中一個命令：

```
aws rds describe-db-instance-automated-backups --db-instance-identifier DBInstanceIdentifier
```

或

```
aws rds describe-db-instance-automated-backups --dbi-resource-id DbiResourceId
```

若要使用 RDS API 來描述自動備份，請呼叫 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstanceAutomatedBackups.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstanceAutomatedBackups.html) 動作並搭配下列其中一個參數：
+ `DBInstanceIdentifier`
+ `DbiResourceId`

# 保留自動備份
<a name="USER_WorkingWithAutomatedBackups.Retaining"></a>

**注意**  
您僅能保留資料庫執行個體的自動備份，不能保留多可用區域資料庫叢集的自動備份。

當您刪除資料庫執行個體時，您可以選擇保留自動備份。自動備份的保留天數等於在刪除時您為資料庫執行個體設定的備份保留期。

保留的自動備份包含來自資料庫執行個體的系統快照和交易日誌。還包含還原到作用中執行個體時所需的資料庫執行個體屬性，例如配置的儲存體和資料庫執行個體類別。

保留的自動備份和手動快照會產生帳單費用，直到將其刪除為止。如需詳細資訊，請參閱 [保留成本](#USER_WorkingWithAutomatedBackups.RetentionCosts)。

對於執行 Db2、MariaDB、MySQL、PostgreSQL、Oracle 和 Microsoft SQL Server 引擎的 RDS 執行個體，您可以保留自動備份。

您可以使用 AWS 管理主控台、RDS API 和 AWS CLI 來還原或移除保留的自動備份。

**Topics**
+ [保留期間](#USER_WorkingWithAutomatedBackups.RetentionPeriods)
+ [檢視保留的備份](#USER_WorkingWithAutomatedBackups.viewing-retained)
+ [還原](#USER_WorkingWithAutomatedBackups.Restoration)
+ [保留成本](#USER_WorkingWithAutomatedBackups.RetentionCosts)
+ [限制](#USER_WorkingWithAutomatedBackups.Limits)

## 保留期間
<a name="USER_WorkingWithAutomatedBackups.RetentionPeriods"></a>

保留的自動備份中的系統快照和交易日誌會像在來源資料庫執行個體中一樣過期。因為沒有為此執行個體建立新的快照或日誌，保留的自動備份最後會完全過期。事實上，根據您刪除來源執行個體時的保留期間設定，保留的自動備份存留多久取決於其最後一個系統快照是否還存在。在最後一個系統快照過期之後，系統會移除保留的自動備份。

您可以像刪除資料庫執行個體一樣來移除保留的自動備份。您可以使用主控台或 RDS API 操作 `DeleteDBInstanceAutomatedBackup`，以移除保留的自動備份。

最終快照與保留的自動備份彼此獨立。即使您保留自動備份，仍強烈建議您建立最終快照，因為保留的自動備份最後會過期。最終快照不會過期。

## 檢視保留的備份
<a name="USER_WorkingWithAutomatedBackups.viewing-retained"></a>

若要檢視保留的自動備份，請在導覽窗格中選擇 **Automated backups (自動備份)**，然後選擇 **Retained (保留)**。若要檢視與保留的自動備份相關聯的個別快照，請在導覽窗格中選擇 **Snapshots (快照)**。或者，您可以描述與保留的自動備份相關聯的個別快照。您可以從那裡的其中一個快照直接還原資料庫執行個體。

若要使用 AWS CLI 來描述保留的自動備份，請使用下列命令：

```
aws rds describe-db-instance-automated-backups --dbi-resource-id DbiResourceId
```

若要使用 RDS API 來描述保留的自動備份，請呼叫 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstanceAutomatedBackups.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstanceAutomatedBackups.html) 動作並搭配 `DbiResourceId` 參數。

## 還原
<a name="USER_WorkingWithAutomatedBackups.Restoration"></a>

如需有關從自動備份中還原資料庫執行個體的資訊，請參閱[將 Amazon RDS 的資料庫執行個體還原至指定時間](USER_PIT.md)。

## 保留成本
<a name="USER_WorkingWithAutomatedBackups.RetentionCosts"></a>

保留的自動備份所需的成本是其相關聯的系統快照的總儲存成本。交易日誌或執行個體中繼資料不會產生額外費用。備份的所有其他定價規則適用於可還原的執行個體。

例如，假設配置給執行中執行個體的總儲存體是 100 GB。也假設您有 50 GB 的手動快照，還有 75 GB 的系統快照，這些都與保留的自動備份相關聯。在此案例中，您只需要對額外 25 GB 的備份儲存付費，就像這樣：(50 GB \$1 75 GB) – 100 GB = 25 GB。

## 限制
<a name="USER_WorkingWithAutomatedBackups.Limits"></a>

保留的自動備份有下列限制：
+ 在一個 AWS 區域中，保留的自動備份最多 40 個。這不算在資料庫執行個體配額內。您可以同時有 40 個執行中的資料庫執行個體和額外 40 個保留的自動備份。
+ 保留的自動備份不含參數或選項群組的相關資訊。
+ 您可以將已刪除的執行個體還原到刪除當時的保留期間內的某個時間點。
+ 您無法修改保留的自動備份。這是因為它包含您刪除來源執行個體時存在的系統備份、交易日誌和資料庫執行個體屬性。

# 刪除保留的自動備份
<a name="USER_WorkingWithAutomatedBackups-Deleting"></a>

不再需要保留的自動備份時，刪除即可。

## 主控台
<a name="USER_WorkingWithAutomatedBackups-Deleting.CON"></a>

**刪除保留的自動備份**

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

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

1. 在**已保留**標籤，選擇您要刪除的已保留自動備份。

1. 對於 **Actions** (動作)，請選擇 **Delete** (刪除)。

1. 在確認頁面上，輸入 **delete me**，然後選擇 **Delete (刪除)**。

## AWS CLI
<a name="USER_WorkingWithAutomatedBackups-Deleting.CLI"></a>

您可以使用 AWS CLI 命令 [delete-db-instance-automated-backup](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-instance-automated-backup.html)，透過下列選項刪除保留的自動備份︰
+ `--dbi-resource-id` – 來源資料庫執行個體的資源識別符。

  您可以執行 AWS CLI 命令 [describe-db-instance-automated-backups](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instance-automated-backups.html)，刪除已保留自動備份的來源資料庫執行個體的來源識別符。

**Example**  
下列範例刪除來源資料庫執行個體識別碼為 `db-123ABCEXAMPLE` 的已保留自動備份。  
針對 Linux、macOS 或 Unix：  

```
1. aws rds delete-db-instance-automated-backup \
2.     --dbi-resource-id db-123ABCEXAMPLE
```
針對 Windows：  

```
1. aws rds delete-db-instance-automated-backup ^
2.     --dbi-resource-id db-123ABCEXAMPLE
```

## RDS API
<a name="USER_WorkingWithAutomatedBackups-Deleting.API"></a>

您可以使用 Amazon RDS API 操作 [DeleteDBInstanceAutomatedBackup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBInstanceAutomatedBackup.html)，透過下列參數刪除保留的自動備份︰
+ `DbiResourceId` – 來源資料庫執行個體的資源識別符。

  您可以使用 Amazon RDS API 操作 [DescribeDBInstanceAutomatedBackups](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstanceAutomatedBackups.html)，尋找已保留自動備份的來源資料庫執行個體的來源識別符。

## 停用自動備份
<a name="USER_WorkingWithAutomatedBackups.Disabling"></a>

在某些情況下，您可能想要暫時停用自動備份，例如載入大量資料時。

**重要**  
我們非常不建議停用自動備份，因為它會停用 point-in-time 恢復。停用資料庫執行個體或多可用區域資料庫叢集的自動備份將會刪除該資料庫現有的所有自動備份。如果您停用，然後重新啟用自動備份，您只能從您重新啟用自動備份的時間開始還原。

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

**立即停用自動備份**

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

1. 在導覽窗格中選擇**資料庫**，然後選擇您要修改的資料庫執行個體或多可用區域資料庫叢集。

1. 選擇 **Modify** (修改)。

1. 針對 **Backup retention period** (備份保留期)，選擇 **0 days** (0 天)。

1. 選擇 **Continue (繼續)**。

1. 選擇 **Apply immediately** (立即套用)。

1. 選擇**修改資料庫執行個體**或**修改叢集**，以儲存您的變更並啟用自動備份。

### AWS CLI
<a name="USER_WorkingWithAutomatedBackups.Disabling.CLI"></a>

若要立即停用自動備份，請使用 [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) 或 [modify-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster.html) 命令，搭配 `--apply-immediately` 將備份保留期設為 0。

**Example**  
下列範例會立即停用多可用區域資料庫叢集的自動備份。  
針對 Linux、macOS 或 Unix：  

```
aws rds modify-db-cluster \
    --db-cluster-identifier mydbcluster \
    --backup-retention-period 0 \
    --apply-immediately
```
針對 Windows：  

```
aws rds modify-db-cluster ^
    --db-cluster-identifier mydbcluster ^
    --backup-retention-period 0 ^
    --apply-immediately
```

若要知道修改何時生效，請針對資料庫執行個體呼叫 `describe-db-instances`，或針對多可用區域資輛酷叢集呼叫 `describe-db-clusters`，直到備份保留期的值為 0 且 `mydbcluster` mydbinstance 狀態為可用。

```
aws rds describe-db-clusters --db-cluster-identifier mydcluster
```

### RDS API
<a name="USER_WorkingWithAutomatedBackups.Disabling.API"></a>

若要立即停用自動備份，請呼叫 [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) 或 [ModifyDBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBCluster.html) 操作與下列參數搭配：
+ `DBInstanceIdentifier = mydbinstance` (或 `DBClusterIdentifier = mydbcluster`)
+ `BackupRetentionPeriod = 0`

**Example**  

```
https://rds.amazonaws.com/
    ?Action=ModifyDBInstance
    &DBInstanceIdentifier=mydbinstance
    &BackupRetentionPeriod=0
    &SignatureVersion=2
    &SignatureMethod=HmacSHA256
    &Timestamp=2009-10-14T17%3A48%3A21.746Z
    &AWSAccessKeyId=<&AWS; Access Key ID>
    &Signature=<Signature>
```

# 利用不受支援的 MySQL 儲存引擎進行自動備份
<a name="Overview.BackupDeviceRestrictions"></a>

就 MySQL 資料庫引擎而言，自動備份僅支援 InnoDB 儲存引擎。使用這些功能搭配其他 MySQL 儲存引擎 (包括 MyISAM) 可能導致從備份中還原時發生不可靠的行為。尤其，因為 MyISAM 之類的儲存引擎不支援可靠的損毀復原，萬一毀損，您的資料表可能會損壞。基於這個原因，我們鼓勵您使用 InnoDB 儲存引擎。
+ 若要將現有的 MyISAM 資料表轉換為 InnoDB 資料表，您可以使用 `ALTER TABLE` 命令，例如：`ALTER TABLE table_name ENGINE=innodb, ALGORITHM=COPY;`
+ 如果選擇使用 MyISAM，則您可以使用 `REPAIR` 命令，嘗試手動修復在損毀之後損壞的資料表。如需詳細資訊，請參閱 MySQL 文件中的 [REPAIR TABLE 陳述式](https://dev.mysql.com/doc/refman/8.0/en/repair-table.html)。不過，如同 MySQL 文件所述，您很有可能無法復原所有資料。
+ 如果想要在還原之前建立 MyISAM 資料表的快照，請遵循下列步驟：

  1. 停止 MyISAM 資料表的所有活動 (亦即，關閉所有工作階段)。

     您可以關閉所有工作階段，方法為針對從 `SHOW FULL PROCESSLIST` 命令傳回的每一個程序呼叫 [mysql.rds\$1kill](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.CommonDBATasks.html) 命令。

  1. 鎖定並清空您的每一個 MyISAM 資料表。例如，以下命令會鎖定並清空兩個名為 `myisam_table1` 和 `myisam_table2` 的資料表：

     ```
     mysql> FLUSH TABLES myisam_table, myisam_table2 WITH READ LOCK;
     ```

  1. 建立資料庫執行個體或多可用區域資料庫叢集的快照。完成快照時，請釋放鎖定並恢復 MyISAM 資料表上的活動。您可以使用以下命令，釋放資料表上的鎖定：

     ```
     mysql> UNLOCK TABLES;
     ```

  這些步驟會強制 MyISAM 將記憶體中存放的資料清空到磁碟，以確保您從資料庫快照還原時全新開始。如需建立資料庫快照的詳細資訊，請參閱[為 Amazon RDS 的單一可用區域資料庫執行個體建立資料庫快照](USER_CreateSnapshot.md)。

# 利用不受支援的 MariaDB 儲存引擎進行自動備份
<a name="Overview.BackupDeviceRestrictionsMariaDB"></a>

針對 MariaDB 資料庫引擎，僅 InnoDB 儲存引擎支援自動備份。使用這些功能搭配其他 MariaDB 儲存引擎 (包括 Aria) 可能導致從備份中還原時發生不可靠的行為。即使 Aria 是 MyISAM 的防當機替代方案，您的資料表仍可能在當機時毀損。基於這個原因，我們鼓勵您使用 InnoDB 儲存引擎。
+ 若要將現有的 Aria 資料表轉換為 InnoDB 資料表，您可以使用 `ALTER TABLE` 命令。例如：`ALTER TABLE table_name ENGINE=innodb, ALGORITHM=COPY;`
+ 如果選擇使用 Aria，則您可以嘗試使用 `REPAIR TABLE` 命令，手動修復在當機之後損壞的資料表。如需詳細資訊，請參閱 [http://mariadb.com/kb/en/mariadb/repair-table/](http://mariadb.com/kb/en/mariadb/repair-table/)。
+ 如果想要在還原之前建立 Aria 資料表的快照，請遵循下列步驟：

  1. 停止 Aria 資料表的所有活動 (亦即，關閉所有工作階段)。

  1. 鎖定並清空您的每一個 Aria 資料表。

  1. 建立資料庫執行個體或多可用區域資料庫叢集的快照。完成快照時，請釋放鎖定並恢復 Aria 資料表上的活動。這些步驟會強制 Aria 將記憶體中儲存的資料排至磁碟，進而確保在您從資料庫快照進行還原時全新開始。

# 將自動備份複寫至另一個備份 AWS 區域
<a name="USER_ReplicateBackups"></a>

如需新增的災難復原功能，您可以設定 Amazon RDS 資料庫執行個體，將快照和交易日誌複寫至 AWS 區域 您選擇的目的地。為資料庫執行個體設定備份複寫時，RDS 會在資料庫執行個體上的所有快照和交易記錄準備就緒時，立即啟動其跨區域複製作業。

資料傳輸需支付資料庫快照複製費用。複製資料庫快照後，目的地區域的儲存體將收取標準費用。如需詳細資訊，請參閱 [RDS 定價](https://aws.amazon.com/rds/oracle/pricing/)。

如需使用備份複寫的範例，請參閱 AWS 線上技術與 [Amazon RDS for Oracle 跨區域自動備份討論受管災難復原](https://pages.awscloud.com/Managed-Disaster-Recovery-with-Amazon-RDS-for-Oracle-Cross-Region-Automated-Backups_2021_0908-DAT_OD.html)。

**注意**  
多可用區域資料庫叢集不支援自動備份複寫。但多可用區域資料庫執行個體部署則加以支援。如需自動備份限制的詳細資訊，請參閱 [Amazon RDS 的配額和條件限制](CHAP_Limits.md)。

如需設定和管理 Amazon RDS 自動備份的相關資訊，請參閱下列主題。

**主題**
+ [啟用 Amazon RDS 的跨區域自動備份](AutomatedBackups.Replicating.Enable.md)
+ [尋找 Amazon RDS 複寫備份的相關資訊](AutomatedBackups.Replicating.Describe.md)
+ [從 Amazon RDS 的複寫備份還原至指定的時間](AutomatedBackups.PiTR.md)
+ [停用 Amazon RDS 的自動備份複寫](AutomatedBackups.StopReplicating.md)
+ [刪除 Amazon RDS 的複寫備份](AutomatedBackups.Delete.md)
+ [對已停止的跨區域自動備份進行故障診斷](AutomatedXREGBackups.Troubleshooting.md)

## 多可用區域部署支援
<a name="USER_ReplicateBackups.Multi-AZ-deployments"></a>

下列引擎的多可用區域資料庫執行個體部署支援跨區域自動備份複寫：
+ RDS for Db2
+ RDS for MariaDB
+ RDS for MySQL
+ RDS for Oracle
+ RDS for PostgreSQL
+ RDS for SQL Server

多可用區域資料庫叢集不支援跨區域自動備份複寫。

## 區域和版本可用性
<a name="USER_ReplicateBackups.RegionVersionAvailability"></a>

功能可用性和支援會因每個資料庫引擎的特定版本以及 AWS 區域而有所不同。如需跨區域自動備份的版本和區域可用性的相關資訊，請參閱 [支援 Amazon RDS 中跨區域自動備份的區域和資料庫引擎](Concepts.RDS_Fea_Regions_DB-eng.Feature.CrossRegionAutomatedBackups.md)。

## 來源和目的地 AWS 區域 支援
<a name="USER_ReplicateBackups.Regions"></a>

以下項目支援備份複寫 AWS 區域。


****  

| 來源區域 | 目的地區域可用 | 
| --- | --- | 
| 非洲 (開普敦) |  歐洲 (法蘭克福)、歐洲 (愛爾蘭)、歐洲 (倫敦)  | 
| 亞太地區 (香港) | 亞太區域 (新加坡)、亞太區域 (東京) | 
| 亞太地區 (海德拉巴) | 亞太地區 (孟買) | 
| 亞太區域 (雅加達) | 亞太區域 （馬來西亞）、亞太區域 （新加坡） | 
| 亞太地區 (墨爾本) | 亞太地區 (悉尼) | 
| 亞太地區 (馬來西亞) | 亞太地區 (新加坡) | 
| 亞太地區 (孟買) |  亞太區域 (海德拉巴)、亞太區域 (新加坡) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (奧勒岡)  | 
| 亞太區域 (大阪) | 亞太區域 (東京) | 
| 亞太區域 (首爾) |  亞太區域 (新加坡)、亞太區域 (東京) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (奧勒岡)  | 
| 亞太地區 (新加坡) |  亞太區域 (香港)、亞太區域 (馬來西亞)、亞太區域 (孟買)、亞太區域 (首爾)、亞太區域 (雪梨)、亞太區域 (東京) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (奧勒岡)  | 
| 亞太地區 (悉尼) |  亞太區域 (墨爾本)、亞太區域 (新加坡) 美國東部 (維吉尼亞北部)、美國西部 (加利佛尼亞北部)、美國西部 (奧勒岡)  | 
| 亞太地區 (東京) |  亞太區域 (香港)、亞太區域 (大阪)、亞太區域 (首爾)、亞太區域 (新加坡) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (奧勒岡)  | 
| 加拿大 (中部) |  加拿大西部 (卡加利) 歐洲 (愛爾蘭) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (加利佛尼亞北部)、美國西部 (奧勒岡)  | 
| 加拿大西部 (卡加利) | 加拿大 (中部) | 
| 中國 (北京) | 中國 (寧夏) | 
| 中國 (寧夏) | 中國 (北京) | 
| 歐洲 (法蘭克福) |  非洲 (開普敦) 歐洲 (愛爾蘭)、歐洲 (倫敦)、歐洲 (巴黎)、歐洲 (斯德哥爾摩)、歐洲 (蘇黎世) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (奧勒岡)  | 
| 歐洲 (愛爾蘭) |  非洲 (開普敦) 加拿大 (中部) 歐洲 (法蘭克福)、歐洲 (倫敦)、歐洲 (巴黎)、歐洲 (斯德哥爾摩)、歐洲 (蘇黎世) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (加利佛尼亞北部)、美國西部 (奧勒岡)  | 
| 歐洲 (倫敦) |  非洲 (開普敦) 歐洲 (法蘭克福)、歐洲 (愛爾蘭)、歐洲 (巴黎)、歐洲 (斯德哥爾摩) 美國東部 (維吉尼亞北部)  | 
| 歐洲 (米蘭) |  歐洲 (法蘭克福)  | 
| Europe (Paris) |  歐洲 (法蘭克福)、歐洲 (愛爾蘭)、歐洲 (倫敦)、歐洲 (斯德哥爾摩) 美國東部 (維吉尼亞北部)  | 
| 歐洲 (西班牙) |  歐洲 （愛爾蘭）、歐洲 （巴黎）  | 
| 歐洲 (斯德哥爾摩) |  歐洲 (法蘭克福)、歐洲 (愛爾蘭)、歐洲 (倫敦)、歐洲 (巴黎) 美國東部 (維吉尼亞北部)  | 
| 歐洲 (蘇黎世) | 歐洲 (法蘭克福)、歐洲 (愛爾蘭) | 
| 以色列 (特拉維夫) | 歐洲 (愛爾蘭) | 
| 中東 (阿拉伯聯合大公國) | 歐洲 (法蘭克福) | 
| 南美洲 (聖保羅) | 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄) | 
| AWS GovCloud （美國東部） | AWS GovCloud （美國西部） | 
| AWS GovCloud （美國西部） | AWS GovCloud （美國東部） | 
| 美國東部 (維吉尼亞北部) |  亞太區域 (孟買)、亞太區域 (首爾)、亞太區域 (新加坡)、亞太區域 (雪梨)、亞太區域 (東京) 加拿大 (中部) 歐洲 (法蘭克福)、歐洲 (愛爾蘭)、歐洲 (倫敦)、歐洲 (巴黎)、歐洲 (斯德哥爾摩) 南美洲 (聖保羅) 美國東部 (俄亥俄)、美國西部 (加利佛尼亞北部)、美國西部 (奧勒岡)  | 
| 美國東部 (俄亥俄) |  亞太區域 (孟買)、亞太區域 (首爾)、亞太區域 (新加坡)、亞太區域 (東京) 加拿大 (中部) 歐洲 (法蘭克福)、歐洲 (愛爾蘭) 南美洲 (聖保羅) 美國東部 (維吉尼亞北部)、美國西部 (加利佛尼亞北部)、美國西部 (奧勒岡)  | 
| 美國西部 (加利佛尼亞北部) |  亞太區域 (雪梨) 加拿大 (中部) 歐洲 (愛爾蘭) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (奧勒岡)  | 
| 美國西部 (奧勒岡) |  亞太區域 (孟買)、亞太區域 (首爾)、亞太區域 (新加坡)、亞太區域 (雪梨)、亞太區域 (東京) 加拿大 (中部) 歐洲 (法蘭克福)、歐洲 (愛爾蘭) 美國東部 (維吉尼亞北部)、美國東部 (俄亥俄)、美國西部 (加利佛尼亞北部)  | 

您也可以使用 `describe-source-regions` AWS CLI 命令來找出哪些 AWS 區域 可以互相複寫。如需詳細資訊，請參閱[尋找 Amazon RDS 複寫備份的相關資訊](AutomatedBackups.Replicating.Describe.md)。

## 限制
<a name="USER_ReplicateBackups.Limitations"></a>

以下是 Amazon RDS 跨區域自動備份的限制。
+ 多可用區域資料庫叢集不支援自動備份複寫。
+ 根據預設，每個 最多可以有 20 個跨區域自動備份 AWS 帳戶。

# 啟用 Amazon RDS 的跨區域自動備份
<a name="AutomatedBackups.Replicating.Enable"></a>

您可以使用 Amazon RDS 主控台在新的或現有的資料庫執行個體上啟用備份複寫。您也可以使用 `start-db-instance-automated-backups-replication` AWS CLI 命令或 `StartDBInstanceAutomatedBackupsReplication` RDS API 操作。您最多可以將 20 個備份複寫到每個 AWS 帳戶 的每個目的地 AWS 區域。

**注意**  
若要能夠複寫自動備份，請務必將其啟用。如需詳細資訊，請參閱 [啟用自動備份](USER_WorkingWithAutomatedBackups.Enabling.md)。

## 主控台
<a name="AutomatedBackups.Replicating.Enable.Console"></a>

您可以為新的或現有的資料庫執行個體啟用備份複寫：
+ 對於新的資料庫執行個體，請在啟動執行個體時將其啟用。如需詳細資訊，請參閱 [資料庫執行個體的設定](USER_CreateDBInstance.Settings.md)。
+ 對於現有的資料庫執行個體，請使用下列程序。

**為現有的資料庫執行個體啟用備份複寫**

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

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

1. 在 **Current Region (目前區域)** 標籤上，選擇您要啟用備份複寫的資料庫執行個體。

1. 針對 **Actions** (動作)，選擇 **Manage cross-Region replication** (管理跨區域複寫)。

1. 在 **Backup replication** (備份複寫) 下，選擇 **Enable replication to another AWS 區域** (啟用複寫至另一個 AWS 區域)。

1. 選擇 **Destination Region (目的地區域)**。

1. 選擇 **Replicated backup retention period (複寫備份保留期間)**。

1. 如果您已對來源資料庫執行個體啟用加密，請選擇用於加密備份的 **AWS KMS key**，或輸入金鑰 ARN。

1. 選擇**儲存**。

在來源區域中，複製的備份會列在 **Automated backups (自動備份)** 頁面的 **Current Region (目前區域)** 標籤上。在目的地區域中，複製的備份會列在 **Automated backups (自動備份)** 頁面的 **Replicated backups (複製備份)** 標籤上。

## AWS CLI
<a name="AutomatedBackups.Replicating.Enable.CLI"></a>

使用 [https://docs.aws.amazon.com/cli/latest/reference/rds/start-db-instance-automated-backups-replication.html](https://docs.aws.amazon.com/cli/latest/reference/rds/start-db-instance-automated-backups-replication.html) AWS CLI 命令啟用備份複寫。

下列 CLI 範例會將自動備份從 美國西部 (奧勒岡) 區域 中的資料庫執行個體複寫到 美國東部 (維吉尼亞北部) 區域。它也會使用目的地區域中的 AWS KMS key來加密複寫的備份。

**啟用備份複寫**
+ 請執行下列其中一個命令：

  對於 Linux、macOS 或 Unix：

  ```
  aws rds start-db-instance-automated-backups-replication \
  --region us-east-1 \
  --source-db-instance-arn "arn:aws:rds:us-west-2:123456789012:db:mydatabase" \
  --kms-key-id "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE" \
  --backup-retention-period 7
  ```

  在 Windows 中：

  ```
  aws rds start-db-instance-automated-backups-replication ^
  --region us-east-1 ^
  --source-db-instance-arn "arn:aws:rds:us-west-2:123456789012:db:mydatabase" ^
  --kms-key-id "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE" ^
  --backup-retention-period 7
  ```

  在 AWS GovCloud (US-East)和 AWS GovCloud (US-West) 區域之間加密備份時需要 `--source-region` 選項。若為 `--source-region`，請指定來源資料庫執行個體的 AWS 區域。

  若未指定 `--source-region`，請務必指定 `--pre-signed-url` 值。*presigned URL* (預先簽章的 URL) 為包含對來源 AWS 區域 中呼叫 `start-db-instance-automated-backups-replication` 命令之 Signature 第 4 版簽章請求的 URL。如需進一步了解 `pre-signed-url` 選項，請參閱*《AWS CLI 命令參考》*中的 [start-db-instance-automated-backups-replication](https://docs.aws.amazon.com/cli/latest/reference/rds/start-db-instance-automated-backups-replication.html)。

## RDS API
<a name="AutomatedBackups.Replicating.Enable.API"></a>

使用具有下列參數的 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartDBInstanceAutomatedBackupsReplication.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartDBInstanceAutomatedBackupsReplication.html) RDS API 操作啟用備份複寫：
+ `Region` (如果您不是從目的地區域呼叫 API 操作)
+ `SourceDBInstanceArn`
+ `BackupRetentionPeriod`
+ `KmsKeyId` (選用)
+ `PreSignedUrl` (如果使用 `KmsKeyId` 的話則為必要)

**注意**  
如果加密備份，也必須包含預先簽章的 URL。如需有關預先簽章 URL 的詳細資訊，請參閱 *Amazon Simple Storage Service API 參考*中的身分[身分驗證請求：使用查詢參數 (AWS 簽章第 4 版)](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) 和 *AWS 一般參考*中的[簽章第 4 版簽署程序](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)。

# 尋找 Amazon RDS 複寫備份的相關資訊
<a name="AutomatedBackups.Replicating.Describe"></a>

您可以使用下列 CLI 命令來尋找複寫備份的相關資訊：
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-source-regions.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-source-regions.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instance-automated-backups.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instance-automated-backups.html)

下列 `describe-source-regions` 範例列出可將自動備份從中複寫到美國西部 (奧勒岡) 目的地區域的來源 AWS 區域。

**顯示來源區域的相關資訊**
+ 執行下列命令。

  ```
  aws rds describe-source-regions --region us-west-2
  ```

輸出顯示備份可從 US East (N. Virginia) (但不能從美國東部 (俄亥俄) 或 美國西部 (加州北部)) 複寫到美國西部 (奧勒岡)。

```
{
    "SourceRegions": [
        ...
        {
            "RegionName": "us-east-1",
            "Endpoint": "https://rds.us-east-1.amazonaws.com",
            "Status": "available",
            "SupportsDBInstanceAutomatedBackupsReplication": true
        },
        {
            "RegionName": "us-east-2",
            "Endpoint": "https://rds.us-east-2.amazonaws.com",
            "Status": "available",
            "SupportsDBInstanceAutomatedBackupsReplication": false
        },
            "RegionName": "us-west-1",
            "Endpoint": "https://rds.us-west-1.amazonaws.com",
            "Status": "available",
            "SupportsDBInstanceAutomatedBackupsReplication": false
        }
    ]
}
```

下列 `describe-db-instances` 範例顯示資料庫執行個體的自動備份。

**顯示資料庫執行個體的複寫備份**
+ 請執行下列其中一個命令：

  對於 Linux、macOS 或 Unix：

  ```
  aws rds describe-db-instances \
  --db-instance-identifier mydatabase
  ```

  在 Windows 中：

  ```
  aws rds describe-db-instances ^
  --db-instance-identifier mydatabase
  ```

輸出包括複寫的備份。

```
{
    "DBInstances": [
        {
            "StorageEncrypted": false,
            "Endpoint": {
                "HostedZoneId": "Z1PVIF0B656C1W",
                "Port": 1521,
            ...

            "BackupRetentionPeriod": 7,
            "DBInstanceAutomatedBackupsReplications": [{"DBInstanceAutomatedBackupsArn": "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"}]
        }
    ]
}
```

下列 `describe-db-instance-automated-backups` 範例顯示資料庫執行個體的自動備份。

**顯示資料庫執行個體的自動備份**
+ 請執行下列其中一個命令：

  對於 Linux、macOS 或 Unix：

  ```
  aws rds describe-db-instance-automated-backups \
  --db-instance-identifier mydatabase
  ```

  在 Windows 中：

  ```
  aws rds describe-db-instance-automated-backups ^
  --db-instance-identifier mydatabase
  ```

輸出會顯示來源資料庫執行個體和 美國西部 (奧勒岡) 中的自動備份，並將備份複寫到 US East (N. Virginia)。

```
{
    "DBInstanceAutomatedBackups": [
        {
            "DBInstanceArn": "arn:aws:rds:us-west-2:868710585169:db:mydatabase",
            "DbiResourceId": "db-L2IJCEXJP7XQ7HOJ4SIEXAMPLE",
            "DBInstanceAutomatedBackupsArn": "arn:aws:rds:us-west-2:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE",
            "BackupRetentionPeriod": 7,
            "DBInstanceAutomatedBackupsReplications": [{"DBInstanceAutomatedBackupsArn": "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"}]
            "Region": "us-west-2",
            "DBInstanceIdentifier": "mydatabase",
            "RestoreWindow": {
                "EarliestTime": "2020-10-26T01:09:07Z",
                "LatestTime": "2020-10-31T19:09:53Z",
            }
            ...
        }
    ]
}
```

下列 `describe-db-instance-automated-backups` 範例會使用 `--db-instance-automated-backups-arn` 選項顯示目的地區域中的複寫備份。

**顯示複寫的備份**
+ 請執行下列其中一個命令：

  對於 Linux、macOS 或 Unix：

  ```
  aws rds describe-db-instance-automated-backups \
  --db-instance-automated-backups-arn "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"
  ```

  在 Windows 中：

  ```
  aws rds describe-db-instance-automated-backups ^
  --db-instance-automated-backups-arn "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"
  ```

輸出會顯示 美國西部 (奧勒岡) 中的來源資料庫執行個體，以及 US East (N. Virginia) 中的複寫備份。

```
{
    "DBInstanceAutomatedBackups": [
        {
            "DBInstanceArn": "arn:aws:rds:us-west-2:868710585169:db:mydatabase",
            "DbiResourceId": "db-L2IJCEXJP7XQ7HOJ4SIEXAMPLE",
            "DBInstanceAutomatedBackupsArn": "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE",
            "Region": "us-west-2",
            "DBInstanceIdentifier": "mydatabase",
            "RestoreWindow": {
                "EarliestTime": "2020-10-26T01:09:07Z",
                "LatestTime": "2020-10-31T19:01:23Z"
            },
            "AllocatedStorage": 50,
            "BackupRetentionPeriod": 7,
            "Status": "replicating",
            "Port": 1521,
            ...
        }
    ]
}
```

# 從 Amazon RDS 的複寫備份還原至指定的時間
<a name="AutomatedBackups.PiTR"></a>

您可以使用 Amazon RDS 主控台從複寫備份將資料庫執行個體還原至特定的時間點。您也可以使用 `restore-db-instance-to-point-in-time` AWS CLI 命令或 `RestoreDBInstanceToPointInTime` RDS API 操作。

如需有關 point-in-time 恢復 (PITR) 的一般資訊，請參閱 [將 Amazon RDS 的資料庫執行個體還原至指定時間](USER_PIT.md)。

**注意**  
跨 AWS 區域 複寫自動備份時，請注意下列資料庫引擎限制：  
在 RDS for SQL Server 上，不會複製選項群組。
在 RDS for Oracle 上，不會複製下列選項：`NATIVE_NETWORK_ENCRYPTION`、`OEM`、`OEM_AGENT` 和 `SSL`。
如果您已將自訂選項群組與 資料庫執行個體相關聯，則可以在目的地區域中重新建立該選項群組。然後還原目的地區域中的資料庫執行個體，並將自訂選項群組與其關聯。如需詳細資訊，請參閱 [使用選項群組](USER_WorkingWithOptionGroups.md)。

## 主控台
<a name="AutomatedBackups.PiTR.Console"></a>

**從複寫備份將資料庫執行個體還原至指定的時間**

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

1. 從區域選取器中選擇目的地區域 (將備份複製到的位置)。

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

1. 在 **Replicated backups (複寫備份)** 標籤上，選擇要還原的資料庫執行個體。

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

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

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

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

1. (選用) 視需要選擇其他選項，例如啟用自動調整規模。

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

## AWS CLI
<a name="AutomatedBackups.PiTR.CLI"></a>

使用 [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html) AWS CLI 命令建立新的資料庫執行個體。

**從複寫備份將資料庫執行個體還原至指定的時間**
+ 請執行下列其中一個命令：

  對於 Linux、macOS 或 Unix：

  ```
  1. aws rds restore-db-instance-to-point-in-time \
  2.     --source-db-instance-automated-backups-arn "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE" \
  3.     --target-db-instance-identifier mytargetdbinstance \
  4.     --restore-time 2020-10-14T23:45:00.000Z
  ```

  在 Windows 中：

  ```
  1. aws rds restore-db-instance-to-point-in-time ^
  2.     --source-db-instance-automated-backups-arn "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE" ^
  3.     --target-db-instance-identifier mytargetdbinstance ^
  4.     --restore-time 2020-10-14T23:45:00.000Z
  ```

## RDS API
<a name="AutomatedBackups.PiTR.API"></a>

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

# 停用 Amazon RDS 的自動備份複寫
<a name="AutomatedBackups.StopReplicating"></a>

您可以使用 Amazon RDS 主控台停止資料庫執行個體的備份複寫。您也可以使用 `stop-db-instance-automated-backups-replication` AWS CLI 命令或 `StopDBInstanceAutomatedBackupsReplication` RDS API 操作。

複寫備份的保留時間將視建立時所設定的備份保留期限而定。

## 主控台
<a name="AutomatedBackups.StopReplicating.Console"></a>

從來源區域的 **Automated backups (自動備份)** 頁面停止備份複寫。

**如要停止備份複寫至 AWS 區域**

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

1. 從 **Region selector (區域選取器)** 選擇來源區域。

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

1. 在 **Current Region (目前區域)** 標籤上，選擇您要停止備份複寫的資料庫執行個體。

1. 針對 **Actions** (動作)，選擇 **Manage cross-Region replication** (管理跨區域複寫)。

1. 在 **Backup replication** (備份複寫) 下，清除 **Enable replication to another AWS 區域** (啟用複寫至另一個 AWS 區域) 核取方塊。

1. 選擇**儲存**。

複寫的備份會列在目的地區域 **Automated backups (自動備份)** 頁面的 **Retained (保留)** 標籤上。

## AWS CLI
<a name="AutomatedBackups.StopReplicating.CLI"></a>

使用 [https://docs.aws.amazon.com/cli/latest/reference/rds/stop-db-instance-automated-backups-replication.html](https://docs.aws.amazon.com/cli/latest/reference/rds/stop-db-instance-automated-backups-replication.html) AWS CLI 命令停止備份複寫。

下列 CLI 範例會停止在 美國西部 (奧勒岡) 區域中複寫資料庫執行個體的自動備份。

**停止備份複寫**
+ 請執行下列其中一個命令：

  對於 Linux、macOS 或 Unix：

  ```
  aws rds stop-db-instance-automated-backups-replication \
  --region us-east-1 \
  --source-db-instance-arn "arn:aws:rds:us-west-2:123456789012:db:mydatabase"
  ```

  在 Windows 中：

  ```
  aws rds stop-db-instance-automated-backups-replication ^
  --region us-east-1 ^
  --source-db-instance-arn "arn:aws:rds:us-west-2:123456789012:db:mydatabase"
  ```

## RDS API
<a name="AutomatedBackups.StopReplicating.API"></a>

使用具有下列參數的 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StopDBInstanceAutomatedBackupsReplication.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StopDBInstanceAutomatedBackupsReplication.html) RDS API 操作停止備份複寫：
+ `Region`
+ `SourceDBInstanceArn`

# 刪除 Amazon RDS 的複寫備份
<a name="AutomatedBackups.Delete"></a>

您可以使用 Amazon RDS 主控台刪除資料庫執行個體的複寫備份。您也可以使用 `delete-db-instance-automated-backups` AWS CLI 命令或 `DeleteDBInstanceAutomatedBackup` RDS API 操作。

## 主控台
<a name="AutomatedBackups.Delete.Console"></a>

從 **Automated backups (自動備份)** 頁面刪除目的地區域中複製的備份。

**刪除複寫的備份**

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

1. 從 **Region selector (區域選取器)** 選擇目的地區域。

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

1. 在 **Replicated backups (複寫備份)** 標籤上，選擇要刪除複寫備份的資料庫執行個體。

1. 對於 **Actions** (動作)，請選擇 **Delete** (刪除)。

1. 在確認頁面上，輸入 **delete me**，然後選擇 **Delete (刪除)**。

## AWS CLI
<a name="AutomatedBackups.Delete.CLI"></a>

使用 [https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-instance-automated-backup.html](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-instance-automated-backup.html) AWS CLI 命令刪除複寫的備份。

您可以使用 [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) CLI 命令來尋找複寫備份的 Amazon Resource Name (ARN)。如需詳細資訊，請參閱 [尋找 Amazon RDS 複寫備份的相關資訊](AutomatedBackups.Replicating.Describe.md)。

**刪除複寫的備份**
+ 請執行下列其中一個命令：

  對於 Linux、macOS 或 Unix：

  ```
  aws rds delete-db-instance-automated-backup \
  --db-instance-automated-backups-arn "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"
  ```

  在 Windows 中：

  ```
  aws rds delete-db-instance-automated-backup ^
  --db-instance-automated-backups-arn "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"
  ```

## RDS API
<a name="AutomatedBackups.Delete.API"></a>

使用 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBInstanceAutomatedBackup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBInstanceAutomatedBackup.html) RDS API 操作搭配 `DBInstanceAutomatedBackupsArn` 參數刪除複寫的備份。

# 對已停止的跨區域自動備份進行故障診斷
<a name="AutomatedXREGBackups.Troubleshooting"></a>

 Amazon RDS 會在特定情況下自動停止跨區域自動備份複寫，以保護您的資料並維持符合 AWS 操作要求。

## 帳戶停用
<a name="AutomatedXREGBackups.Troubleshooting.AccountSuspension"></a>

如果 AWS 您的帳戶遭到暫停，Amazon RDS 會自動停止該帳戶中所有資料庫執行個體的跨區域自動備份複寫。目的地中已存在的複寫備份 AWS 區域 會保留至您指定的保留期間。

解決帳戶停用後，您必須手動重新啟用跨區域自動備份複寫，才能繼續將備份複寫到目的地 AWS 區域。

## 選擇加入區域變更
<a name="AutomatedXREGBackups.Troubleshooting.OptInRegion"></a>

當您選擇退出來源 AWS 區域 （主要資料庫執行個體所在的位置） 或目的地 AWS 區域 （正在複寫備份的位置） 時，跨區域自動備份複寫會自動停止。如需選擇加入區域的詳細資訊，請參閱[管理 AWS 區域](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html)。

已存在於目的地的複寫備份 AWS 區域 會保留至您指定的保留期間。若要繼續複寫，請選擇返回所需的 ， AWS 區域 並手動重新啟用跨區域自動備份複寫。

## AWS KMS 金鑰問題
<a name="AutomatedXREGBackups.Troubleshooting.KMSKey"></a>

對於加密的資料庫執行個體，Amazon RDS 需要同時存取來源和目的地 AWS 區域 中的 AWS KMS 金鑰，才能複寫備份。如果您在任一 中停用或刪除 AWS KMS 金鑰 AWS 區域，跨區域自動備份複寫會自動停止。已存在於目的地的複寫備份 AWS 區域 會保留至您指定的保留期間。

若要繼續跨區域自動備份複寫：

1. 重新啟用停用的 AWS KMS 金鑰，或在刪除原始金鑰時建立新的 AWS KMS 金鑰

1. 如果使用新的 AWS KMS 金鑰，請在使用上一個金鑰加密 AWS 區域 的目的地中刪除現有的複寫備份。

1. 重新啟用執行個體的跨區域自動備份複寫

如需管理 AWS KMS 金鑰的詳細資訊，請參閱 [AWS Key Management Service 文件](https://docs.aws.amazon.com/kms/latest/developerguide/)。

**注意**  
除非先前的 AWS KMS 金鑰已重新啟用， AWS 區域 否則您無法從目的地中先前複寫的備份還原。在沒有有效 AWS KMS 金鑰的情況下，備份會保持加密且無法存取。

## 監控備份複寫狀態
<a name="AutomatedXREGBackups.Troubleshooting.Monitoring"></a>

您可以使用 Amazon RDS 主控台 AWS CLI或 RDS API 監控跨區域自動備份的狀態。如需詳細資訊，請參閱[尋找 Amazon RDS 複寫備份的相關資訊](AutomatedBackups.Replicating.Describe.md)。

# 管理手動備份
<a name="USER_ManagingManualBackups"></a>

本節說明如何管理資料庫執行個體和資料庫叢集的手動備份。

如需為 Single-AZ 資料庫執行個體建立資料庫快照的相關資訊，請參閱 [為 Amazon RDS 的單一可用區域資料庫執行個體建立資料庫快照](USER_CreateSnapshot.md)。

如需為多可用區域資料庫叢集建立資料庫快照的相關資訊，請參閱 [為 Amazon RDS 建立多可用區域資料庫叢集快照](USER_CreateMultiAZDBClusterSnapshot.md)。

如需刪除資料庫快照的相關資訊，請參閱 [刪除 Amazon RDS 的資料庫快照](USER_DeleteSnapshot.md)。

# 為 Amazon RDS 的單一可用區域資料庫執行個體建立資料庫快照
<a name="USER_CreateSnapshot"></a>

Amazon RDS 會建立資料庫執行個體的儲存體磁碟區快照，因此會備份整個資料庫執行個體，而不只是個別的資料庫。在單一可用區資料庫執行個體中建立資料庫快照會導致輸入/輸出短暫停用；且根據資料庫執行個體的大小和類別，停用時間會持續幾秒鐘至幾分鐘。若為 MariaDB、MySQL、Oracle 和 PostgreSQL，在備份異地同步備份部署期間，您的主要執行個體上不會暫停輸入/輸出活動，因為備份取自於待命執行個體。若為 SQL Server，在備份異地同步備份部署期間會短暫暫停輸入/輸出活動。

建立資料庫快照時，您必須找出要進行備份的資料庫執行個體，並為該資料庫快照命名，使得您稍後可透過它進行還原。建立快照所需的時間量因資料庫的大小而異。由於快照包括整個儲存體磁碟區，檔案大小，例如暫存檔案，也會影響建立快照所需的時間量。

**注意**  
您的資料庫執行個體必須處於 `available` 狀態，才能取得資料庫快照。  
對於 PostgreSQL 資料庫執行個體，未記錄資料表中的資料可能無法從快照中還原。如需更多詳細資訊，請參閱 [使用 PostgreSQL 的最佳實務](CHAP_BestPractices.md#CHAP_BestPractices.PostgreSQL)。

與自動備份不同，手動快照不受備份保留期限的限制。快照不會過期。

針對非常長期的 MariaDB、MySQL 和 PostgreSQL 資料備份，建議您將快照資料匯出至 Amazon S3。如果資料庫引擎的主要版本不再受到支援，您則無法從快照還原至該版本。如需詳細資訊，請參閱[為 Amazon RDS 將資料庫快照資料匯出至 Amazon S3](USER_ExportSnapshot.md)。

您可以使用 AWS 管理主控台、 AWS CLI或 RDS API 建立資料庫快照。

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

**建立資料庫快照**

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

1. 在導覽窗格中，選擇 **Snapshots (快照)**。

   **手動快照**清單即會出現。

1. 選擇 **Take Snapshot** (擷取快照)。

   **Take DB Snapshot** (建立資料庫快照) 視窗隨即顯示。  
![\[擷取資料庫快照。\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/take_db_snapshot.png)

1. 選擇您要擷取快照的**資料庫執行個體**。

1. 輸入**快照名稱**。

1. 選擇 **Take Snapshot** (擷取快照)。

**手動快照**清單隨即出現，且新資料庫快照的狀態顯示為 `Creating`。之後，其狀態為 `Available`，你可以看到其建立時間。

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

當您使用 建立資料庫快照時AWS CLI，您需要識別要備份的資料庫執行個體，然後為資料庫快照命名，以便稍後可以從中還原。您可以使用 AWS CLI[https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-snapshot.html)命令搭配下列參數來執行此操作：
+ `--db-instance-identifier`
+ `--db-snapshot-identifier`

在此範例中，您會為稱為 *mydbinstance* 的資料庫執行個體建立稱為 *mydbsnapshot* 的資料庫快照。

**Example**  
針對 Linux、macOS 或 Unix：  

```
1. aws rds create-db-snapshot \
2.     --db-instance-identifier mydbinstance \
3.     --db-snapshot-identifier mydbsnapshot
```
在 Windows 中：  

```
1. aws rds create-db-snapshot ^
2.     --db-instance-identifier mydbinstance ^
3.     --db-snapshot-identifier mydbsnapshot
```

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

使用 Amazon RDS API 建立資料庫快照時，您必須找出要進行備份的資料庫執行個體，並為該資料庫快照命名，使得您稍後可透過它進行還原。您可以使用 Amazon RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBSnapshot.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBSnapshot.html) 命令，並搭配下列參數來執行此動作：
+ `DBInstanceIdentifier`
+ `DBSnapshotIdentifier`

# 為 Amazon RDS 建立多可用區域資料庫叢集快照
<a name="USER_CreateMultiAZDBClusterSnapshot"></a>

當您建立多可用區域資料庫叢集快照時，請務必找出要進行備份的多可用區域資料庫叢集，並為該資料庫叢集快照命名，以便您稍後可透過它進行還原。您也可以共用多可用區域資料庫叢集快照。如需說明，請參閱「[共用 Amazon RDS 的資料庫快照](USER_ShareSnapshot.md)」。

您可以使用 AWS 管理主控台、AWS CLI 或 RDS API 建立多可用區域資料庫叢集快照。

針對非常長期的備份，建議您將快照資料匯出至 Amazon S3。如果資料庫引擎的主要版本不再受到支援，您則無法從快照還原至該版本。如需詳細資訊，請參閱 [為 Amazon RDS 將資料庫快照資料匯出至 Amazon S3](USER_ExportSnapshot.md)。

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

**建立資料庫叢集快照**

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

1. 在導覽窗格中，選擇 **Databases** (資料庫)。

1. 在清單中，選擇您要擷取快照的多可用區域資料庫叢集。

1. 針對 **Actions** (動作)，選擇 **Take snapshot** (建立快照)。

   **Take DB Snapshot** (建立資料庫快照) 視窗隨即顯示。

1. 在 **Snapshot name (快照名稱)** 中輸入快照的名稱。

1. 選擇 **Take Snapshot** (擷取快照)。

**Snapshots (快照)** 頁面隨即顯示，且新的多可用區域資料庫叢集快照的狀態顯示為 `Creating`。之後，其狀態為 `Available`，你可以看到其建立時間。

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

您可以使用 AWS CLI [ create-db-cluster-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster-snapshot.html) 命令搭配下列選項，建立多可用區域資料庫叢集快照：
+ `--db-cluster-identifier`
+ `--db-cluster-snapshot-identifier`

在此範例中，您為名為 *`mymultiazdbclustersnapshot`* 的資料庫叢集建立名為 *`mymultiazdbcluster`*的多可用區域資料庫叢集快照。

**Example**  
針對 Linux、macOS 或 Unix：  

```
1. aws rds create-db-cluster-snapshot \
2.     --db-cluster-identifier mymultiazdbcluster \
3.     --db-cluster-snapshot-identifier mymultiazdbclustersnapshot
```
針對 Windows：  

```
1. aws rds create-db-cluster-snapshot ^
2.     --db-cluster-identifier mymultiazdbcluster ^
3.     --db-cluster snapshot-identifier mymultiazdbclustersnapshot
```

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

您可以使用 Amazon RDS API [CreateDBClusterSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBClusterSnapshot.html) 操作搭配下列參數，建立多可用區域資料庫叢集快照：
+ `DBClusterIdentifier`
+ `DBClusterSnapshotIdentifier`

## 刪除多可用區域資料庫叢集快照
<a name="USER_DeleteMultiAZDBClusterSnapshot"></a>

當您不再需要時，可以刪除由 Amazon RDS 管理的多可用區域資料庫快照。如需說明，請參閱「[刪除 Amazon RDS 的資料庫快照](USER_DeleteSnapshot.md)」。

# 刪除 Amazon RDS 的資料庫快照
<a name="USER_DeleteSnapshot"></a>

當您不再需要時，可以刪除由 Amazon RDS 管理的資料庫快照。

**注意**  
若要刪除 管理的備份AWS Backup，請使用 AWS Backup主控台。如需 AWS Backup 的詳細資訊，請參閱《[https://docs.aws.amazon.com/aws-backup/latest/devguide](https://docs.aws.amazon.com/aws-backup/latest/devguide)》。

## 刪除資料庫快照
<a name="USER_DeleteRDSSnapshot"></a>

您可以使用 、 或 RDS API 刪除手動AWS 管理主控台、共用AWS CLI或公有資料庫快照。

若要刪除共用或公有快照，您必須登入擁有快照AWS的帳戶。

如果您想刪除自動資料庫快照，而保留資料庫執行個體，請更改資料庫執行個體的備份保留週期為 0。當更改套用時，自動快照會被刪除。如果您不想等到下次的維護週期，您可以立即套用更改。更改完成之後，您可以透過設定備份週期的數值大於 0，重新啟用自動備份。如需修改資料庫執行個體的相關資訊，請參閱[修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。

保留的自動備份和手動快照會產生帳單費用，直到將其刪除為止。如需詳細資訊，請參閱[保留成本](USER_WorkingWithAutomatedBackups.Retaining.md#USER_WorkingWithAutomatedBackups.RetentionCosts)。

如果您刪除資料庫執行個體，您可以透過移除自動備份資料庫執行個體來刪除自動資料庫快照。如需自動備份的相關資訊，請參閱 [備份簡介](USER_WorkingWithAutomatedBackups.md)。

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

**刪除資料庫快照**

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

1. 在導覽窗格中，選擇 **Snapshots (快照)**。

   **手動快照**清單即會出現。

1. 選擇想要刪除的資料庫快照。

1. 針對 **Actions** (動作)，選擇 **Delete Snapshot** (刪除快照)。  
![\[刪除快照\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/delete-snapshot.png)

1. 在確認頁面上，選擇 **Delete (刪除)**。  
![\[確認刪除快照\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/delete-snapshot-confirm.png)

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

您可以使用 AWS CLI命令 [delete-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-snapshot.html) 來刪除資料庫快照。

下列選項用來刪除資料庫快照。
+ `--db-snapshot-identifier` – 資料庫快照的識別符。

**Example**  
下列程式碼會刪除 `mydbsnapshot` 資料庫快照。  
針對 Linux、macOS 或 Unix：  

```
1. aws rds delete-db-snapshot \
2.     --db-snapshot-identifier mydbsnapshot
```
在 Windows 中：  

```
1. aws rds delete-db-snapshot ^
2.     --db-snapshot-identifier mydbsnapshot
```

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

您可以使用 Amazon RDS API 操作 [DeleteDBSnapsho (刪除資料庫快照)](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBSnapshot.html) 來刪除資料庫快照。

下列參數用來刪除資料庫快照。
+ `DBSnapshotIdentifier` – 資料庫快照的識別碼。

# 還原至資料庫執行個體
<a name="USER_RestoreFromSnapshot"></a><a name="restore_snapshot"></a>

本節說明如何還原至資料庫執行個體。此頁面說明如何從資料庫快照還原至 Amazon RDS 資料庫執行個體。

Amazon RDS 會建立資料庫執行個體的儲存體磁碟區快照，因此會備份整個資料庫執行個體，而不只是個別的資料庫。您可從資料庫快照還原來建立新的資料庫執行個體。您提供要從中還原之資料庫快照的名稱，然後提供一個從還原建立之新資料庫執行個體的名稱。您無法從資料庫快照還原至現有的資料庫執行個體；您在還原快照時建立新的資料庫執行個體。

若還原的資料庫執行個體狀態為 `available`，您便可使用該執行個體。資料庫執行個體會在背景繼續載入資料。這就是通常所稱的*延遲載入*。如果您存取尚未載入的資料，資料庫執行個體會立即從 Amazon S3 下載所請求的資料，然後繼續在背景載入剩餘的資料。如需更多資訊，請參閱 [Amazon EBS 快照](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html)。

若要協助緩解延遲載入對要快速存取之資料表的影響，您可以執行涉及完整資料表掃描的作業，例如 `SELECT *`。這會允許 Amazon RDS 從 S3 下載所有已備份的資料表資料。

您可以還原資料庫快照，並使用與來源資料庫快照不同的儲存類型。在此情況下，還原程序較慢，因為將資料遷移至新儲存類型所需的額外工作。如果您在磁帶儲存體間來回進行還原，遷移程序是最緩慢的。那是因為磁帶儲存體沒有佈建 IOPS 或一般用途 (SSD) 儲存體的 IOPS 功能。

您可以使用 從資料庫執行個體快照 CloudFormation 還原資料庫執行個體。如需詳細資訊，請參閱《*AWS CloudFormation 使用者指南*》中的 [AWS::RDS::DBInstance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html)。

**注意**  
您無法從同時共用和加密的資料庫快照還原資料庫執行個體。不過，您可以複製資料庫快照，再從副本還原資料庫執行個體。如需詳細資訊，請參閱[複製 Amazon RDS 的資料庫快照](USER_CopySnapshot.md)。

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

## 從快照還原
<a name="USER_RestoreFromSnapshot.Restoring"></a>

您可以使用 AWS 管理主控台 AWS CLI、 或 RDS API 從資料庫快照還原資料庫執行個體。

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

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

**從資料庫快照還原資料庫執行個體**

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

1. 在導覽窗格中，選擇 **Snapshots (快照)**。

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

1. 針對 **Actions** (動作)，選擇 **Restore snapshot** (還原快照)。

1. 在 **Restore snapshot (還原快照)** 頁面上，對 **DB Instance Identifier (資料庫執行個體識別碼)**，輸入您還原的資料庫執行個體名稱。

1. 指定其他設定，例如配置的儲存體大小。

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

1. 選擇 **Restore DB instance** (還原資料庫執行個體)。

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

若要從資料庫快照還原資料庫執行個體，請使用 AWS CLI 命令 [restore-db-instance-from-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html)。

在此範例中，您會從先前建立、名稱為 `mydbsnapshot` 的資料庫快照還原。您會還原至名稱為 `mynewdbinstance` 的新資料庫執行個體。此範例也會設定配置的儲存體大小。

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

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

```
1. aws rds restore-db-instance-from-db-snapshot \
2.     --db-instance-identifier mynewdbinstance \
3.     --db-snapshot-identifier mydbsnapshot \
4.     --allocated-storage 100
```
在 Windows 中：  
   

```
1. aws rds restore-db-instance-from-db-snapshot ^
2.     --db-instance-identifier mynewdbinstance ^
3.     --db-snapshot-identifier mydbsnapshot ^
4.     --allocated-storage 100
```
此命令會傳回類似以下的輸出：  

```
1. DBINSTANCE  mynewdbinstance  db.t3.small  MySQL     50       sa              creating  3  n  8.0.28  general-public-license
```

**Example**  
下列範例顯示還原快照，同時將額外的儲存磁碟區新增至新建立的執行個體。快照包含額外的磁碟區 `rdsdbdata2`。還原操作會新增 `rdsdbdata3`，在新建立的執行個體中總共產生三個磁碟區。您無法在還原快照時刪除磁碟區。  

```
1. aws rds restore-db-instance-from-db-snapshot \
2.      --db-instance-identifier my-restored-instance \
3.      --db-snapshot-identifier my-asv-snapshot \
4.      --additional-storage-volumes '[{ \
5.              "VolumeName": "rdsdbdata3", \
6.              "StorageType":"gp3", \
7.              "AllocatedStorage": 5000, \
8.              "IOPS": 12000 \
9.          }]'
```

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

若要從資料庫快照還原資料庫執行個體，請使用下列參數來呼叫 Amazon RDS API 函數 [RestoreDBInstanceFromDBSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html)：
+ `DBInstanceIdentifier` 
+ `DBSnapshotIdentifier` 

## 考量事項
<a name="USER_RestoreFromSnapshot.Considerations"></a>

如需從資料庫快照還原至資料庫執行個體時的考量，請參閱下列主題。

**Topics**
+ [參數群組考量](#USER_RestoreFromSnapshot.Parameters)
+ [安全群組考量](#USER_RestoreFromSnapshot.Security)
+ [選項群組考量](#USER_RestoreFromSnapshot.Options)
+ [資源標記考量事項](#restore-from-snapshot.tagging)
+ [Db2 考量](#USER_RestoreFromSnapshot.Db2)
+ [Microsoft SQL Server 考量](#USER_RestoreFromSnapshot.MSSQL)
+ [MySQL 考量](#USER_RestoreFromSnapshot.MySQL)
+ [Oracle 資料庫考量事項](#USER_RestoreFromSnapshot.Oracle)

### 參數群組考量
<a name="USER_RestoreFromSnapshot.Parameters"></a>

建議您針對您建立的任何資料庫快照保留資料庫參數群組，這樣才能為還原的資料庫執行個體與正確的參數群組建立關聯。

預設的資料庫參數群組會與還原的執行個體建立關聯，除非您選擇不同執行個體。預設參數群組中沒有可用的自訂參數設定。

還原資料庫執行個體時，可以指定參數群組。

如需資料庫參數群組的詳細資訊，請參閱 [Amazon RDS 的參數群組](USER_WorkingWithParamGroups.md)。

### 安全群組考量
<a name="USER_RestoreFromSnapshot.Security"></a>

還原資料庫執行個體時，預設的虛擬私有雲端 (VPC)、資料庫子網路群組和 VPC 安全群組會與還原的執行個體建立關聯，除非您選擇不同的執行個體。
+ 若您使用 Amazon RDS 主控台，可指定要與執行個體建立關聯的自訂 VPC 安全群組，或建立新的 VPC 安全群組。
+ 如果您使用的是 AWS CLI，您可以在 `restore-db-instance-from-db-snapshot`命令中包含 `--vpc-security-group-ids`選項，以指定要與執行個體建立關聯的自訂 VPC 安全群組。
+ 如果您是使用 Amazon RDS API，則可以在 `VpcSecurityGroupIds.VpcSecurityGroupId.N` 動作中包括 `RestoreDBInstanceFromDBSnapshot` 參數。

一旦還原完成且新的資料庫執行個體可用，您還可修改資料庫執行個體來變更 VPC 設定。如需詳細資訊，請參閱[修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。

### 選項群組考量
<a name="USER_RestoreFromSnapshot.Options"></a>

還原資料庫執行個體時，多數情況下預設的資料庫選項群組會與還原的資料庫執行個體建立關聯。

例外情況是來源資料庫執行個體與包含持續性或永久選項的選項群組相關聯時。例如，如果來源資料庫執行個體使用 Oracle 透明資料加密 (TDE)，還原的資料庫執行個體必須使用具有 TDE 選項的選項群組。

如果將資料庫執行個體還原至不同的 VPC 中，您必須執行以下其中一項操作以指派資料庫選項群組：
+ 將該 VPC 群組的預設選項群組指派給執行個體。
+ 指派與該 VPC 連結的另一個選項群組。
+ 建立新的選項群組，並將其指派至資料庫執行個體。若使用 Oracle TDE 等持續性或永久選項，您必須建立包含持續性或永久選項的新選項群組。

如需資料庫選項群組的詳細資訊，請參閱 [使用選項群組](USER_WorkingWithOptionGroups.md)。

### 資源標記考量事項
<a name="restore-from-snapshot.tagging"></a>

從資料庫快照還原資料庫執行個體時，RDS Proxy 會檢查您是否指定了新標籤。如果有指定，便會將新標籤新增到還原的資料庫執行個體中。如果沒有新標籤，RDS 會在建立快照時將來源資料庫執行個體中的標籤新增到還原的資料庫執行個體。

如需詳細資訊，請參閱[複製標籤到資料庫快照](USER_Tagging.md#USER_Tagging.CopyTags)。

### Db2 考量
<a name="USER_RestoreFromSnapshot.Db2"></a>



使用 BYOL 模式時，您的 Amazon 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)。

### Microsoft SQL Server 考量
<a name="USER_RestoreFromSnapshot.MSSQL"></a>

將 RDS for Microsoft SQL Server 資料庫快照還原至新執行個體時，您一律可還原至與您的快照相同的版本。在某些情況下，您也可以變更資料庫執行個體的版本。下列限制在您變更版本時可加以套用：
+ 資料庫快照必須具有針對新版本配置的足夠儲存體。
+ 僅支援下列版本變更：
  + 從 Standard Edition 至 Enterprise Edition
  + 從 Web Edition 至 Standard Edition 或 Enterprise Edition
  + 從 Express Edition 至 Web Edition、Standard Edition 或 Enterprise Edition

如果您想要透過還原快照，從某個版本變更為不支援的新版本，您可嘗試使用原生的備份和還原功能。SQL Server 會根據您在資料庫上啟用的 SQL Server 功能來驗證您的資料庫是否與新版本相容。如需詳細資訊，請參閱[使用原生備份和還原，匯入和匯出 SQL Server 資料庫](SQLServer.Procedural.Importing.md)。

### MySQL 考量
<a name="USER_RestoreFromSnapshot.MySQL"></a>

若要使用不支援的引擎版本從 RDS for MySQL 資料庫快照還原，可能必須多次升級資料庫快照。如需升級選項的詳細資訊，請參閱 [RDS for MySQL 不支援引擎版本的資料庫快照升級選項](mysql-upgrade-snapshot.upgrade-options.md)。

如需有關升級 RDS for MySQL 資料庫快照引擎版本的詳細資訊，請[升級 MySQL 資料庫快照引擎版本](mysql-upgrade-snapshot.md)。

### Oracle 資料庫考量事項
<a name="USER_RestoreFromSnapshot.Oracle"></a>

當您從資料庫快照還原 Oracle 資料庫時，請考慮下列事項：
+ 在還原資料庫快照之前，您可以將其升級至更新的 Oracle 資料庫版本。如需詳細資訊，請參閱[升級 Oracle 資料庫快照](USER_UpgradeDBSnapshot.Oracle.md)。
+ 如果您還原使用單一租戶組態之 CDB 執行個體的快照，則可以變更 PDB 名稱。當 CDB 執行個體使用多租戶組態時，您無法變更 PDB 名稱。如需詳細資訊，請參閱[備份與還原 CDB](Oracle.Concepts.single-tenant.snapshots.md)。
+ 您不能更改 CDB 名稱，其始終是 `RDSCDB`。對於所有 CDB 執行個體，此 CDB 名稱都相同。
+ 您無法直接與資料庫快照中的租戶資料庫互動。如果您還原使用多租戶組態之 CDB 執行個體的快照，則會還原其所有租戶資料庫。您可以使用 [describe-db-snapshot-tenant-databases](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-snapshot-tenant-databases.html)，在還原資料庫快照內的租戶資料庫之前先行檢查。
+ 如果您使用 Oracle GoldenGate，請一律使用 `compatible` 參數來保留參數群組。當您從資料庫快照還原資料庫執行個體時，請指定具有相符或更大 `compatible` 值的一個參數群組。
+ 您可以選擇在還原資料庫快照時為資料庫重新命名。如果線上重做日誌的大小總計大於 20GB，RDS 可能會將您的線上重做日誌大小重設為預設設定 512MB (4 x 128MB)。較小的大小可讓還原操作在合理的時間內完成。後續您可以重新建立線上重做日誌，並變更大小。
+ 您可以在 AWS Secrets Manager中管理主要使用者密碼。如需詳細資訊，請參閱[使用 管理主要使用者密碼的概觀 AWS Secrets Manager](rds-secrets-manager.md#rds-secrets-manager-overview)。

# 將 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`

# 將多可用區域資料庫叢集還原至指定時間
<a name="USER_PIT.MultiAZDBCluster"></a>

您可將多可用區域資料庫叢集還原到特定的時間點，從而建立新的多可用區域資料庫叢集。

RDS 會持續將多可用區域資料庫叢集的交易日誌上傳至 Amazon S3。您可以還原至備份保留期間內的任何時間點。若要查看最早的多可用區域資料庫叢集的可還原時間，請使用 AWS CLI [describe-db-clusters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html) 命令。查看資料庫叢集的 `EarliestRestorableTime` 欄位中所傳回的值。若要查看多可用區域資料庫叢集的最新可還原時間，請查看資料庫叢集 `LatestRestorableTime` 欄位中傳回的值。

將多可用區域資料庫叢集還原至某個時間點時，您可以選擇多可用區域資料庫叢集的預設 VPC 安全群組，也可將自訂 VPC 安全群組套用至您的多可用區域資料庫叢集。



還原的多可用區域資料庫叢集會自動與預設資料庫叢集參數群組產生關聯。不過，您可以在還原期間指定自訂資料庫叢集參數群組，加以套用。

如果來源資料庫叢集具有資源標籤，RDS 會將最新的標籤新增至還原的資料庫叢集。

**注意**  
建議您還原到與來源資料庫叢集大小相同或相似的多可用區域資料庫叢集大小。如果使用的是佈建 IOPS儲存，我們亦建議您使用相同或類似的 IOPS 值進行還原。例如，如果您選擇 IOPS 值不相容的資料庫叢集大小，則可能會收到錯誤訊息。  
如果來源多可用區域資料庫叢集使用一般用途 SSD (gp3) 儲存體，且配置的儲存體小於 400 GiB，您就無法為還原後的資料庫叢集修改佈建 IOPS。

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

您可以使用 AWS 管理主控台、AWS CLI 或 RDS API，將多可用區域資料庫叢集還原到某個時間點。

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

**若要將多可用區域資料庫叢集還原至指定時間**

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

1. 在導覽窗格中，選擇 **Databases** (資料庫)。

1. 選擇您要還原的多可用區域資料庫叢集。

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

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

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

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

1. 對於 **DB cluster identifier (資料庫叢集識別碼)**，輸入還原之多可用區域資料庫叢集的名稱。

1. 在 **Availability and durability** (可用性與持久性) 中，選擇 **Multi-AZ DB cluster** (多可用區域資料庫叢集)。  
![\[多可用區域資料庫叢集選擇\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/multi-az-db-cluster-create.png)

1. 在 **DB instance class (資料庫執行個體類別)** 中，選擇資料庫執行個體類別。

   目前，多可用區域資料庫叢集僅支援 db.m6gd 和 db.r6gd 資料庫執行個體類別。如需資料庫執行個體類別的詳細資訊，請參閱 [ 資料庫執行個體類別](Concepts.DBInstanceClass.md)。

1. 在其餘區段，指定資料庫叢集設定。如需每項設定的相關資訊，請參閱 [建立多可用區域資料庫叢集的設定](create-multi-az-db-cluster.md#create-multi-az-db-cluster-settings)。

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

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

若要將多可用區域資料庫叢集還原至指定時間，請使用 AWS CLI 命令 [ restore-db-cluster-to-point-in-time](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-to-point-in-time.html) 來建立新的多可用區域資料庫叢集。

目前，多可用區域資料庫叢集僅支援 db.m6gd 和 db.r6gd 資料庫執行個體類別。如需資料庫執行個體類別的詳細資訊，請參閱 [ 資料庫執行個體類別](Concepts.DBInstanceClass.md)。

**Example**  
針對 Linux、macOS 或 Unix：  

```
1. aws rds restore-db-cluster-to-point-in-time \
2.     --source-db-cluster-identifier mysourcemultiazdbcluster \
3.     --db-cluster-identifier mytargetmultiazdbcluster \
4.     --restore-to-time 2021-08-14T23:45:00.000Z \
5.     --db-cluster-instance-class db.r6gd.xlarge
```
針對 Windows：  

```
1. aws rds restore-db-cluster-to-point-in-time ^
2.     --source-db-cluster-identifier mysourcemultiazdbcluster ^
3.     --db-cluster-identifier mytargetmultiazdbcluster ^
4.     --restore-to-time 2021-08-14T23:45:00.000Z ^
5.     --db-cluster-instance-class db.r6gd.xlarge
```

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

若要將資料庫叢集還原至指定的時間，請搭配下列參數呼叫 Amazon RDS API [RestoreDBClusterToPointInTime](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBClusterToPointInTime.html) 操作：
+ `SourceDBClusterIdentifier`
+ `DBClusterIdentifier`
+ `RestoreToTime`

# 從快照還原至多可用區域資料庫叢集
<a name="USER_RestoreFromMultiAZDBClusterSnapshot.Restoring"></a>

您可以使用 AWS CLI、 或 RDS API AWS 管理主控台將快照還原至多可用區域資料庫叢集。您可以將這些類型的快照還原至多可用區域資料庫叢集：
+ 單一可用區域部署的快照
+ 具有單一資料庫執行個體的多可用區域資料庫叢集部署的快照
+ 多可用區域資料庫叢集的快照

如需多可用區域部署的相關資訊，請參閱 [設定及管理 Amazon RDS 的多可用區域部署](Concepts.MultiAZ.md)。

**提示**  
您可以藉由還原快照，將單一可用區域部署或多可用區域資料庫叢集部署遷移至多可用區域資料庫叢集部署。

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

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

**若要將快照還原至多可用區域資料庫叢集**

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

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 選擇想要從中還原的快照。

1. 針對 **Actions** (動作)，選擇 **Restore snapshot** (還原快照)。

1. 在 **Restore snapshot** (還原快照) 頁面的 **Availability and durability** (可用性與持久性) 中，選擇 **Multi-AZ DB cluster** (多可用區域資料庫叢集)。  
![\[多可用區域資料庫叢集選擇\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/multi-az-db-cluster-create.png)

1. 對於 **DB cluster identifier (資料庫叢集識別碼)**，輸入還原之多可用區域資料庫叢集的名稱。

1. 在其餘區段，指定資料庫叢集設定。如需每項設定的相關資訊，請參閱 [建立多可用區域資料庫叢集的設定](create-multi-az-db-cluster.md#create-multi-az-db-cluster-settings)。

1. 選擇 **Restore DB instance** (還原資料庫執行個體)。

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

若要將快照還原至多可用區域資料庫叢集，請使用 [restore-db-cluster-from-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-from-snapshot.html) AWS CLI 命令。

在下例中，您會從先前建立的名稱為 `mysnapshot` 的快照還原。您會還原至名稱為 `mynewmultiazdbcluster` 的新多可用區域資料庫叢集。您也可以指定多可用區域資料庫叢集中資料庫執行個體所使用的資料庫執行個體類別。針對資料庫引擎指定 `mysql` 或 `postgres`。

針對 `--snapshot-identifier` 選項，您可以使用名稱或 Amazon 資源名稱 (ARN) 指定資料庫叢集快照。不過，您只能使用 ARN 指定資料庫快照。

對於 `--db-cluster-instance-class` 選項，為新的多可用區域資料庫叢集指定資料庫執行個體類別。多可用區域資料庫叢集僅支援特定的資料庫執行個體類別，例如 db.m6gd 和 db.r6gd 資料庫執行個體類別。如需資料庫執行個體類別的詳細資訊，請參閱 [ 資料庫執行個體類別](Concepts.DBInstanceClass.md)。

您也可以指定其他選項。

**Example**  
針對 Linux、macOS 或 Unix：  

```
1. aws rds restore-db-cluster-from-snapshot \
2.     --db-cluster-identifier mynewmultiazdbcluster \
3.     --snapshot-identifier mysnapshot \
4.     --engine mysql|postgres \
5.     --db-cluster-instance-class db.r6gd.xlarge
```
在 Windows 中：  

```
1. aws rds restore-db-cluster-from-snapshot ^
2.     --db-cluster-identifier mynewmultiazdbcluster ^
3.     --snapshot-identifier mysnapshot ^
4.     --engine mysql|postgres ^
5.     --db-cluster-instance-class db.r6gd.xlarge
```

在還原資料庫叢集之後，您可以將多可用區域資料庫叢集新增至安全群組，此安全群組與您用來建立快照 (如果適用) 的資料庫叢集或資料庫執行個體相關聯。完成此動作會提供先前資料庫叢集或資料庫執行個體的相同功能。

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

若要將快照還原至多可用區域資料庫叢集，請呼叫 RDS API 操作 [RestoreDBClusterFromSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBClusterFromSnapshot.html) 搭配下列參數：
+ `DBClusterIdentifier` 
+ `SnapshotIdentifier` 
+ `Engine` 

您也可以指定選用參數。

在還原資料庫叢集之後，您可以將多可用區域資料庫叢集新增至安全群組，此安全群組與您用來建立快照 (如果適用) 的資料庫叢集或資料庫執行個體相關聯。完成此動作會提供先前資料庫叢集或資料庫執行個體的相同功能。

# 從多可用區域資料庫叢集快照還原至資料庫執行個體
<a name="USER_RestoreFromMultiAZDBClusterSnapshot"></a>

*多可用區域資料庫叢集快照*是資料庫叢集的儲存體磁碟區快照，其會備份整個資料庫叢集，而不只是個別的資料庫。您可以將多可用區域資料庫叢集快照還原至單一可用區域部署或多可用區資料庫執行個體部署。如需多可用區域部署的相關資訊，請參閱 [設定及管理 Amazon RDS 的多可用區域部署](Concepts.MultiAZ.md)。

**注意**  
您也可以將多可用區域資料庫叢集快照還原至新的多可用區域資料庫叢集。如需說明，請參閱[從快照還原至多可用區域資料庫叢集](USER_RestoreFromMultiAZDBClusterSnapshot.Restoring.md)。

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

使用 AWS CLI、 AWS 管理主控台或 RDS API 將多可用區域資料庫叢集快照還原至單一可用區域部署或多可用區域資料庫執行個體部署。

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

**將多可用區域資料庫叢集快照還原至單一可用區域部署或多可用區資料庫執行個體部署**

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

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 選擇想要從中還原的多可用區域資料庫叢集快照。

1. 針對 **Actions** (動作)，選擇 **Restore snapshot** (還原快照)。

1. 在 **Restore snapshot** (還原快照) 頁面的 **Availability and durability** (可用性和持久性) 中，選擇下列其中一項：
   + **Single DB instance** (單一資料庫執行個體) - 將快照還原到沒有待命資料庫執行個體的資料庫執行個體。
   + **Multi-AZ DB instance** (多可用區域資料庫執行個體) - 將快照還原至具有一個主要資料庫執行個體和一個待命資料庫執行個體的多可用區域資料庫執行個體部署。

1. 對於 **DB instance identifier** (資料庫執行個體識別符)，輸入所還原資料庫執行個體的名稱。

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

1. 選擇 **Restore DB instance** (還原資料庫執行個體)。

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

若要將多可用區域資料庫叢集快照還原至資料庫執行個體部署，請使用 AWS CLI 命令 [restore-db-instance-from-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html)。

在下列範例中，您會從先前建立的多可用區域資料庫叢集快照 (名為 `myclustersnapshot`) 還原。您會還原至主要資料庫執行個體名為 `mynewdbinstance` 的新多可用區域資料庫執行個體部署。對於 `--db-cluster-snapshot-identifier` 選項，指定多可用區域資料庫叢集快照的名稱。

對於 `--db-instance-class` 選項，指定資料庫執行個體類別，進行新的資料庫執行個體部署。如需資料庫執行個體類別的詳細資訊，請參閱 [ 資料庫執行個體類別](Concepts.DBInstanceClass.md)。

您也可以指定其他選項。

**Example**  
針對 Linux、macOS 或 Unix：  

```
1. aws rds restore-db-instance-from-db-snapshot \
2.     --db-instance-identifier mynewdbinstance \
3.     --db-cluster-snapshot-identifier myclustersnapshot \
4.     --engine mysql \
5.     --multi-az \
6.     --db-instance-class db.r6g.xlarge
```
在 Windows 中：  

```
1. aws rds restore-db-instance-from-db-snapshot ^
2.     --db-instance-identifier mynewdbinstance ^
3.     --db-cluster-snapshot-identifier myclustersnapshot ^
4.     --engine mysql ^
5.     --multi-az ^
6.     --db-instance-class db.r6g.xlarge
```

在還原資料庫執行個體之後，您可以將其集新增至安全群組，此安全群組與您用來建立快照 (如果適用) 的多可用區域資料庫叢集相關聯。完成此動作會提供先前多可用區域資料庫叢集的相同功能。

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

若要將多可用區域資料庫叢集快照還原至資料庫執行個體部署，請呼叫 RDS API 操作 [RestoreDBInstanceFromDBSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html) 搭配下列參數：
+ `DBInstanceIdentifier` 
+ `DBClusterSnapshotIdentifier` 
+ `Engine` 

您也可以指定選用參數。

在還原資料庫執行個體之後，您可以將其集新增至安全群組，此安全群組與您用來建立快照 (如果適用) 的多可用區域資料庫叢集相關聯。完成此動作會提供先前多可用區域資料庫叢集的相同功能。

# 教學課程：從資料庫快照還原 Amazon RDS 資料庫執行個體
<a name="CHAP_Tutorials.RestoringFromSnapshot"></a>

通常，使用 Amazon RDS 時，您可能會有一個偶爾使用的資料庫執行個體，但該執行個體不需全時段可用。例如，假設每一季您都會進行客戶問卷調查，其會使用 Amazon EC2 執行個體來託管客戶問卷調查網站。您也有用來存放問卷調查結果的資料庫執行個體。在此情況下，節省支出的方式就是在問卷調查完成後建立資料庫執行個體的資料庫快照。然後，您可以刪除資料庫執行個體，並在需要時將其還原以再次進行問卷調查。

還原資料庫執行個體時，您會提供要從中還原之資料庫快照的名稱。然後，您需提供從還原作業中建立的新資料庫執行個體名稱。

如需有關從快照還原資料庫執行個體的詳細資訊，請參閱 [還原至資料庫執行個體](USER_RestoreFromSnapshot.md)。

如需有關 Amazon RDS AWS KMS 金鑰管理的詳細資訊，請參閱 [AWS KMS key 管理](Overview.Encryption.Keys.md)。

## 從資料庫快照還原資料庫執行個體
<a name="tut-restore-snapshot.console"></a>

在 AWS 管理主控台 中使用下列程序從快照還原。

**從資料庫快照還原資料庫執行個體**

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

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

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

1. 針對 **Actions** (動作)，選擇 **Restore snapshot** (還原快照)。  
![\[RDS 主控台中 Actions (動作) 選單中的還原快照選項\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/tut-restore-instance1.png)

   **Restore snapshot** (還原快照) 頁面隨即出現。  
![\[還原快照頁面\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/tut-restore-instance2.png)

1. 在 **DB instance settings** (資料庫執行個體設定) 底下，為 **DB engine** (資料庫引擎) 和 **License model** (授權模式) 使用預設的設定 (適用於 Oracle 或 Microsoft SQL Server)。

1. 在 **Settings** (設定) 下的 **DB instance identifier** (資料庫執行個體識別符) 中，輸入還原的資料庫執行個體要使用的唯一名稱，如 **mynewdbinstance**。

   如果要從建立資料庫快照後即刪除的資料庫執行個體還原，可以使用該資料庫執行個體的名稱。

1. 在 **可用性和耐久性**底下，選擇是否在另一個可用區域中建立備用執行個體。

   對於本教學課程，請勿建立待命執行個體。

1. 在 **Connectivity** (連線) 底下，使用以下項目的預設設定：
   + **Virtual Private Cloud (VPC)** (虛擬私有雲端 (VPC))
   + **DB subnet group** (資料庫子網路群組)
   + **公用存取**
   + **VPC security group (firewall)** (VPC 安全群組 (防火牆))

1. 選擇 **DB instance class** (資料庫執行個體類別)。

   在本教學課程中，請選擇 **Burstable classes (includes t classes)** (高載類別 (包括 t 類別))，然後選擇 **db.t3.small**。

1. **Encryption** (加密) 請使用預設設定。

   如果快照的來源資料庫執行個體已加密，還原的資料庫執行個體也會加密。無法使還原項目處於未加密狀態。

1. 展開頁面底部的 **Additional configuration** (其他組態)。  
![\[其他組態\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/tut-restore-instance3.png)

1. 在 **Database options** (資料庫選項) 底下執行以下操作：

   1. 選擇 **DB parameter group** (資料庫參數群組)。

      在本教學課程中，請使用預設的參數群組。

   1. 選擇 **Option group** (選項群組)。

      在本教學課程中，請使用預設的選項群組。
**重要**  
在某些情況下，您可能會從使用持久性或永久性選項之資料庫執行個體的資料庫快照進行還原。若是如此，請務必選擇一個使用相同選項的選項群組。

   1. 在 **Deletion protection** (刪除保護) 選擇 **Enable deletion protection** (啟用刪除保護) 核取方塊。

1. 選擇 **Restore DB instance** (還原資料庫執行個體)。

**Databases** (資料庫) 頁面會顯示還原的資料庫執行個體，其狀態為 `Creating`。

![\[資料庫頁面上已還原的資料庫執行個體\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/tut-restore-instance4.png)


# 複製 Amazon RDS 的資料庫快照
<a name="USER_CopySnapshot"></a>

透過 Amazon RDS，即可複製自動備份或手動資料庫​快照。複製快照之後，副本即為手動快照。您可以製作自動備份或手動快照的多個複本，但每個複本都必須具有唯一的識別碼。

您可以在相同的 中複製快照 AWS 區域、跨 複製快照 AWS 區域，以及複製共用快照。您可以在單一步驟中將快照複製到另一個 AWS 區域 或 帳戶。

## 複製資料庫快照
<a name="USER_CopyDBSnapshot"></a>

對於每個 AWS 帳戶，您一次最多可 AWS 區域 將 20 個資料庫快照從一個快照複製到另一個資料庫快照。如果您將資料庫快照複製到另一個快照 AWS 區域，您可以建立保留在該快照中的手動資料庫快照 AWS 區域。從來源複製資料庫快照 AWS 區域 會產生 Amazon RDS 資料傳輸費用。

如需資料傳輸定價的詳細資訊，請參閱 [Amazon RDS 定價](https://aws.amazon.com/rds/pricing/)。

在新的 中建立資料庫快照複本之後 AWS 區域，資料庫快照複本的行為會與其中的所有其他資料庫快照相同 AWS 區域。

您可以使用 AWS 管理主控台、 AWS CLI或 RDS API 複製資料庫快照。

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

下列程序會使用 在相同 或 AWS 區域 跨 區域中複製加密或未加密的資料庫快照 AWS 管理主控台。

**複製資料庫快照**

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

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 選取您要複製的資料庫快照。

1. 針對 **Actions** (動作) 選擇 **Copy snapshot** (複製快照)。

   **Copy snapshot** (複製快照) 頁面隨即出現。  
![\[複製資料庫快照\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/DBSnapshotCopy1.png)

1. 針對 **Target option group (optional)** (目標選項群組(選用))，選擇新的選項群組 (如果需要的話)。

   如果您要將快照從某個快照複製到 AWS 區域 另一個快照，且資料庫執行個體使用非預設選項群組，請指定此選項。

   如果來源資料庫執行個體使用適用於 Oracle 或 Microsoft SQL Server 的透明資料加密，則您在跨區域複製時必須指定此選項。如需詳細資訊，請參閱[選項群組的考量事項](#USER_CopySnapshot.Options)。

1. （選用） 若要將資料庫快照複製到不同的 AWS 區域，請在**目的地區域**選擇新的 AWS 區域。
**注意**  
目的地 AWS 區域 必須具有與來源相同的資料庫引擎版本 AWS 區域。

1. 針對 **New DB snapshot identifier** (新的資料庫快照識別符)，輸入資料庫快照複本的名稱。

   您可以製作自動備份或手動快照的多個複本，但每個複本都必須具有唯一的識別碼。

1. (選用) 選取 **Copy Tags (複製標籤)**，將快照中的標籤和值複製到快照的副本。

1. (選用) 針對 **Encryption** (加密)，執行下列動作：

   1. 如果資料庫快照未加密，但您想要將複本加密，請選擇 **啟用加密**。
**注意**  
如果資料庫快照已加密，您必須加密複本，才能勾選取核取方塊。

   1. 在 **AWS KMS key**中，指定用來加密資料庫快照複本的 KMS 金鑰識別碼。

1. 選擇 **Copy Snapshot (複製快照)**。

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

您可以使用 AWS CLI 命令 [copy-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-snapshot.html) 來複製資料庫快照。如果您要將快照複製到新的 AWS 區域，請在新的 中執行 命令 AWS 區域。

下列選項用來複製資料庫快照。並非所有情況需要使用所有選項。請根據下列描述和範例來決定要使用的選項。
+ `--source-db-snapshot-identifier` – 來源資料庫快照的識別碼。
  + 如果來源快照與 AWS 區域 複本位於相同位置，請指定有效的資料庫快照識別符。例如 `rds:mysql-instance1-snapshot-20130805`。
  + 如果來源快照與複本 AWS 區域 位於相同位置，且已與您的 共用 AWS 帳戶，請指定有效的資料庫快照 ARN。例如 `arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805`。
  + 如果來源快照位於 AWS 區域 與複本不同的 中，請指定有效的資料庫快照 ARN。例如 `arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805`。
  + 如果您要從共用的手動資料庫快照複製，此參數必須是共用資料庫快照的 Amazon 資源名稱 (ARN)。
  + 如果您要複製加密快照，此參數必須是來源的 ARN 格式 AWS 區域，而且必須符合 `PreSignedUrl` 參數`SourceDBSnapshotIdentifier`中的 。
+ `--target-db-snapshot-identifier` – 加密資料庫快照之新副本的識別碼。
+ `--copy-option-group` – 從已與您的 AWS 帳戶共用的快照中複製選項群組。
+ `--copy-tags` – 包含複製標籤選項，可將快照中的標籤和值複製到快照的副本。
+ `--option-group-name` – 要與快照的副本相關聯的選項群組。

  如果您要將快照從某個快照複製到 AWS 區域 另一個快照，且資料庫執行個體使用非預設選項群組，請指定此選項。

  如果來源資料庫執行個體使用適用於 Oracle 或 Microsoft SQL Server 的透明資料加密，則您在跨區域複製時必須指定此選項。如需詳細資訊，請參閱[選項群組的考量事項](#USER_CopySnapshot.Options)。
+ `--kms-key-id` – 加密資料庫快照的 KMS 金鑰識別碼。KMS 金鑰識別碼是 KMS 金鑰的 Amazon 資源名稱 (ARN)、金鑰識別碼或金鑰別名。
  + 如果您從 複製加密的資料庫快照 AWS 帳戶，您可以指定此參數的值，以使用新的 KMS 金鑰加密複本。如果您不指定此參數的值，則會使用與來源資料庫快照相同的 KMS 金鑰，以加密資料庫快照的副本。
  + 如果您複製從另一個 共用的加密資料庫快照 AWS 帳戶，則必須指定此參數的值。
  + 如果您在複製未加密快照時指定此參數，則副本會進行加密。
  + 如果您將加密快照複製到不同的 AWS 區域，則必須為目的地 指定 KMS 金鑰 AWS 區域。KMS 金鑰專屬於在其中建立 AWS 區域 的 ，您無法在另一個 AWS 區域 中使用加密金鑰 AWS 區域。

**Example 從未加密的快照，到相同區域**  
下列程式碼會在 AWS 區域 與來源快照相同的 `mydbsnapshotcopy`中，使用新名稱 建立快照的副本。建立複本時，原始快照上的資料庫選項群組和標籤都會複製到快照複本。  
針對 Linux、macOS 或 Unix：  

```
aws rds copy-db-snapshot \
    --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805 \
    --target-db-snapshot-identifier mydbsnapshotcopy \
    --copy-option-group \
    --copy-tags
```
在 Windows 中：  

```
aws rds copy-db-snapshot ^
    --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805 ^
    --target-db-snapshot-identifier mydbsnapshotcopy ^
    --copy-option-group ^
    --copy-tags
```

**Example 從未加密的快照，跨區域**  
下列程式碼會在執行 AWS 區域 命令的 `mydbsnapshotcopy`中，使用新名稱 建立快照的副本。  
針對 Linux、macOS 或 Unix：  

```
aws rds copy-db-snapshot \
    --source-db-snapshot-identifier arn:aws:rds:us-east-1:123456789012:snapshot:mysql-instance1-snapshot-20130805 \
    --target-db-snapshot-identifier mydbsnapshotcopy
```
在 Windows 中：  

```
aws rds copy-db-snapshot ^
    --source-db-snapshot-identifier arn:aws:rds:us-east-1:123456789012:snapshot:mysql-instance1-snapshot-20130805 ^
    --target-db-snapshot-identifier mydbsnapshotcopy
```

**Example 從已加密的快照，跨區域**  
下列程式碼範例會在 US East (N. Virginia) 區域中，從 美國西部 (奧勒岡) 區域複製已加密的資料庫快照。在目的地 (us-east-1) 區域中執行命令。  
針對 Linux、macOS 或 Unix：  

```
aws rds copy-db-snapshot \
    --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115 \
    --target-db-snapshot-identifier mydbsnapshotcopy \
    --kms-key-id my-us-east-1-key \ 
    --option-group-name custom-option-group-name
```
在 Windows 中：  

```
aws rds copy-db-snapshot ^
    --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115 ^
    --target-db-snapshot-identifier mydbsnapshotcopy ^
    --kms-key-id my-us-east-1-key ^
    --option-group-name custom-option-group-name
```

當您在 AWS GovCloud （美國東部） 和 AWS GovCloud （美國西部） 區域之間複製加密快照時，需要 `--source-region` 參數。若為 `--source-region`，請指定來源資料庫執行個體的 AWS 區域 。

若未指定 `--source-region`，請指定 `--pre-signed-url` 值。*presigned URL* (預先簽章的 URL) 為包含對來源 AWS 區域中呼叫 `copy-db-snapshot` 命令之 Signature 第 4 版簽章請求的 URL。如要進一步了解 `pre-signed-url` 選項，請參閱《*AWS CLI 命令參考*》中的 [copy-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-snapshot.html)。

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

您可以使用 Amazon RDS API 操作 [CopyDBSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CopyDBSnapshot.html) 來複製資料庫快照。如果您要將快照複製到新的 AWS 區域，請在新的 中執行 動作 AWS 區域。

下列參數用來複製資料庫快照。並非所有情況需要使用所有參數。請根據下列描述和範例來決定要使用的參數。
+ `SourceDBSnapshotIdentifier` – 來源資料庫快照的識別碼。
  + 如果來源快照與 AWS 區域 複本位於相同位置，請指定有效的資料庫快照識別符。例如 `rds:mysql-instance1-snapshot-20130805`。
  + 如果來源快照與複本 AWS 區域 位於相同位置，且已與您的 共用 AWS 帳戶，請指定有效的資料庫快照 ARN。例如 `arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805`。
  + 如果來源快照位於 AWS 區域 與複本不同的 中，請指定有效的資料庫快照 ARN。例如 `arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805`。
  + 如果您要從共用的手動資料庫快照複製，此參數必須是共用資料庫快照的 Amazon 資源名稱 (ARN)。
  + 如果您要複製加密快照，此參數必須是來源的 ARN 格式 AWS 區域，而且必須符合 `PreSignedUrl` 參數`SourceDBSnapshotIdentifier`中的 。
+ `TargetDBSnapshotIdentifier` – 加密資料庫快照之新副本的識別碼。
+ `CopyOptionGroup` – 將此參數設為 `true`，將共用快照中的選項群組複製到快照的複本。預設值為 `false`。
+ `CopyTags` – 將此參數設為 `true`，將快照中的標籤和值複製到快照的副本。預設值為 `false`。
+ `OptionGroupName` – 要與快照的副本相關聯的選項群組。

  如果您要將快照從某個快照複製到 AWS 區域 另一個快照，且資料庫執行個體使用非預設選項群組，請指定此參數。

  如果來源資料庫執行個體使用適用於 Oracle 或 Microsoft SQL Server 的透明資料加密，則您在跨區域複製時必須指定此參數。如需詳細資訊，請參閱[選項群組的考量事項](#USER_CopySnapshot.Options)。
+ `KmsKeyId` – 加密資料庫快照的 KMS 金鑰識別碼。KMS 金鑰識別碼是 KMS 金鑰的 Amazon 資源名稱 (ARN)、金鑰識別碼或金鑰別名。
  + 如果您從 複製加密的資料庫快照 AWS 帳戶，您可以指定此參數的值，以使用新的 KMS 金鑰加密複本。如果您不指定此參數的值，則會使用與來源資料庫快照相同的 KMS 金鑰，以加密資料庫快照的副本。
  + 如果您複製從另一個 共用的加密資料庫快照 AWS 帳戶，則必須指定此參數的值。
  + 如果您在複製未加密快照時指定此參數，則副本會進行加密。
  + 如果您將加密快照複製到不同的 AWS 區域，則必須為目的地 指定 KMS 金鑰 AWS 區域。KMS 金鑰專屬於在其中建立 AWS 區域 的 ，您無法在另一個 AWS 區域 中使用加密金鑰 AWS 區域。
+ `PreSignedUrl` – 包含簽章第 4 版簽署請求的 URL，用於 AWS 區域 包含要複製之來源資料庫快照的來源中的 `CopyDBSnapshot` API 操作。

  當您 AWS 區域 使用 Amazon RDS API 從另一個資料庫快照複製加密的資料庫快照時，請指定此參數。當您使用 AWS CLI從另一個 AWS 區域 複製加密資料庫快照時，您可以指定來源區域選項，而非此參數。

  預先簽章的 URL 必須是對於 `CopyDBSnapshot` API 操作有效的請求，而此作業可於包含要複製之加密資料庫快照的來源 AWS 區域 中執行。預先簽章的 URL 請求必須包含下列參數值：
  + `DestinationRegion` – 加密資料庫快照將複製到 AWS 區域 其中的 。這 AWS 區域 與呼叫包含此預先簽章 URL `CopyDBSnapshot`的操作相同。

    例如，假設您將加密的資料庫快照從 us-west-2 區域複製到 us-east-1 區域。然後，您可以在 us-east-1 區域中呼叫 `CopyDBSnapshot` 操作，並提供一個預先簽章的 URL，其中包含在 us-west-2 區域中對 `CopyDBSnapshot` 操作的呼叫。在此範例中，預先簽章的 URL 中的 `DestinationRegion` 必須設為 us-east-1 區域。
  + `KmsKeyId` – 金鑰的 KMS 金鑰識別碼，用於在目的地 AWS 區域中加密資料庫快照的複本。這與目的地中呼叫`CopyDBSnapshot`的操作 AWS 區域，以及預先簽章的 URL 中包含的操作相同的識別符。
  + `SourceDBSnapshotIdentifier` – 要複製之加密快照的資料庫快照識別碼。此識別碼必須是來源 AWS 區域的 Amazon Resource Name (ARN) 格式。例如，若您要從 us-west-2 區域複製已加密的資料庫快照，您的 `SourceDBSnapshotIdentifier` 會如下列範例所示：`arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115`。

  如需 Signature 第 4 版所簽署之請求的詳細資訊，請參閱下列資訊：
  + Amazon Simple Storage Service API 參考中的[驗證請求：使用查詢參數 (AWS 簽章版本 4)](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) 
  + 中的[簽章第 4 版簽署程序](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) AWS 一般參考

**Example 從未加密的快照，到相同區域**  
下列程式碼會在 AWS 區域 與來源快照相同的 `mydbsnapshotcopy`中，使用新名稱 建立快照的副本。建立副本時，原始快照的所有標籤會複製到快照副本。  

```
https://rds.us-west-1.amazonaws.com/
	?Action=CopyDBSnapshot
	&CopyTags=true
	&SignatureMethod=HmacSHA256
	&SignatureVersion=4
	&SourceDBSnapshotIdentifier=mysql-instance1-snapshot-20130805
	&TargetDBSnapshotIdentifier=mydbsnapshotcopy
	&Version=2013-09-09
	&X-Amz-Algorithm=AWS4-HMAC-SHA256
	&X-Amz-Credential=AKIADQKE4SARGYLE/20140429/us-west-1/rds/aws4_request
	&X-Amz-Date=20140429T175351Z
	&X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date
	&X-Amz-Signature=9164337efa99caf850e874a1cb7ef62f3cea29d0b448b9e0e7c53b288ddffed2
```

**Example 從未加密的快照，跨區域**  
下列程式碼會在 美國西部 (加州北部) 區域中使用新名稱 `mydbsnapshotcopy` 來建立快照的複本。  

```
https://rds.us-west-1.amazonaws.com/
	?Action=CopyDBSnapshot
	&SignatureMethod=HmacSHA256
	&SignatureVersion=4
	&SourceDBSnapshotIdentifier=arn%3Aaws%3Ards%3Aus-east-1%3A123456789012%3Asnapshot%3Amysql-instance1-snapshot-20130805
	&TargetDBSnapshotIdentifier=mydbsnapshotcopy
	&Version=2013-09-09
	&X-Amz-Algorithm=AWS4-HMAC-SHA256
	&X-Amz-Credential=AKIADQKE4SARGYLE/20140429/us-west-1/rds/aws4_request
	&X-Amz-Date=20140429T175351Z
	&X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date
	&X-Amz-Signature=9164337efa99caf850e874a1cb7ef62f3cea29d0b448b9e0e7c53b288ddffed2
```

**Example 從已加密的快照，跨區域**  
下列程式碼會在 US East (N. Virginia) 區域中使用新名稱 `mydbsnapshotcopy` 來建立快照的複本。  

```
https://rds.us-east-1.amazonaws.com/
    ?Action=CopyDBSnapshot
    &KmsKeyId=my-us-east-1-key
    &OptionGroupName=custom-option-group-name
    &PreSignedUrl=https%253A%252F%252Frds.us-west-2.amazonaws.com%252F
         %253FAction%253DCopyDBSnapshot
         %2526DestinationRegion%253Dus-east-1
         %2526KmsKeyId%253Dmy-us-east-1-key
         %2526SourceDBSnapshotIdentifier%253Darn%25253Aaws%25253Ards%25253Aus-west-2%25253A123456789012%25253Asnapshot%25253Amysql-instance1-snapshot-20161115
         %2526SignatureMethod%253DHmacSHA256
         %2526SignatureVersion%253D4
         %2526Version%253D2014-10-31
         %2526X-Amz-Algorithm%253DAWS4-HMAC-SHA256
         %2526X-Amz-Credential%253DAKIADQKE4SARGYLE%252F20161117%252Fus-west-2%252Frds%252Faws4_request
         %2526X-Amz-Date%253D20161117T215409Z
         %2526X-Amz-Expires%253D3600
         %2526X-Amz-SignedHeaders%253Dcontent-type%253Bhost%253Buser-agent%253Bx-amz-content-sha256%253Bx-amz-date
         %2526X-Amz-Signature%253D255a0f17b4e717d3b67fad163c3ec26573b882c03a65523522cf890a67fca613
    &SignatureMethod=HmacSHA256
    &SignatureVersion=4
    &SourceDBSnapshotIdentifier=arn%3Aaws%3Ards%3Aus-west-2%3A123456789012%3Asnapshot%3Amysql-instance1-snapshot-20161115
    &TargetDBSnapshotIdentifier=mydbsnapshotcopy
    &Version=2014-10-31
    &X-Amz-Algorithm=AWS4-HMAC-SHA256
    &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request
    &X-Amz-Date=20161117T221704Z
    &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date
    &X-Amz-Signature=da4f2da66739d2e722c85fcfd225dc27bba7e2b8dbea8d8612434378e52adccf
```

## 限制
<a name="USER_CopySnapshot.Limitations"></a>

以下是複製快照時的一些限制：
+ 您無法在中國 (北京) 或中國 (寧夏) 區域來回複製快照。
+  您可以在 AWS GovCloud （美國東部） 和 AWS GovCloud （美國西部） 之間複製快照。然而，您無法在這些 GovCloud (US) 區域和非 GovCloud (US) 區域和區域之間複製快照。
+ 如果您在目標快照變成可用之前刪除來源快照，則快照副本可能會失敗。刪除來源快照之前，請確認目標快照的狀態為 `AVAILABLE`。
+ 對於單一目的地區域，每一帳戶最多可有 20 個進行中的快照複製請求。
+ 當您為相同來源資料庫執行個體請求多個快照副本時，其將會在內部排隊。稍後請求的副本在先前的快照副本完成前將不會啟動。如需詳細資訊，請參閱 AWS 知識中心的[為什麼我的 EC2 AMI 或 EBS 快照建立速度緩慢？](https://aws.amazon.com/premiumsupport/knowledge-center/ebs-snapshot-ec2-ami-creation-slow/)。
+ 根據 AWS 區域 涉及的內容和要複製的資料量，跨區域快照複本可能需要數小時才能完成。有時某個來源區域會出現大量跨區域快照複製請求。此時，在一些進行中的複製完成之前，Amazon RDS 可能會將該來源區域新提出的跨區域複製請求排入佇列。位於佇列中的複製請求不會顯示進度資訊。複製開始時才會顯示進度資訊。
+ 當您啟動另一個複本時，如果某個複本仍處於待定狀態，則第二個複本在第一個複本完成之前不會開始。
+ 您無法複製多可用區域資料庫叢集的快照。
+ 您只能將使用 io2 磁碟區的資料庫執行個體快照複製到可使用 io2 Block Express 磁碟區的 AWS 區域 。如需詳細資訊，請參閱[Amazon RDS 資料庫執行個體儲存體](CHAP_Storage.md)。

## 考量事項
<a name="USER_CopySnapshot.Considerations"></a>

如需複製資料庫快照時的考量事項，請參閱下列主題。

**Topics**
+ [快照保留](#USER_CopySnapshot.Retention)
+ [共用快照複製考量](#USER_CopySnapshot.Shared)
+ [加密快照複製的考量事項](#USER_CopySnapshot.Encryption)
+ [增量快照複製的考量事項](#USER_CopySnapshot.Incremental)
+ [跨區域快照複製的考量事項](#USER_CopySnapshot.AcrossRegions)
+ [選項群組的考量事項](#USER_CopySnapshot.Options)
+ [參數群組的考量事項](#USER_CopySnapshot.Parameters)

### 快照保留
<a name="USER_CopySnapshot.Retention"></a>

Amazon RDS 會在多種情況下刪除自動備份：
+ 在其保留期結束時。
+ 在您停用資料庫執行個體的自動備份時。
+ 在您刪除資料庫執行個體時。

如果想要讓自動備份保留期間更長，請複製自動備份來建立手動快照，即可保留到您刪除為止。如果手動快照超出預設儲存空間，則其可能產生 Amazon RDS 儲存成本。

如需備份儲存成本的詳細資訊，請參閱 [Amazon RDS 定價](https://aws.amazon.com/rds/pricing/)。

### 共用快照複製考量
<a name="USER_CopySnapshot.Shared"></a>

您可以複製其他 共用給您的快照 AWS 帳戶。在某些情況下，您可以複製已從另一個 共用的加密快照 AWS 帳戶。在這些情況下，您必須能夠存取 AWS KMS key 用來加密快照的 。

**注意**  
Amazon RDS 儲存成本適用於您複製的共用快照。Amazon RDS 可能會將來源資料庫執行個體的 ARN 連接至您複製的快照。

 AWS 區域 如果快照未加密，您可以跨 複製共用資料庫快照。

**注意**  
未加密或使用與初始完整快照相同的 KMS 金鑰加密時， AWS 區域 支援在相同 中複製共用增量快照。如果您在複製後續快照時使用不同的 KMS 金鑰來加密，那些共用的快照就是完整的快照。如需詳細資訊，請參閱[增量快照複製的考量事項](#USER_CopySnapshot.Incremental)。

#### 單一步驟中的跨區域和跨帳戶複製
<a name="cross-region-cross-account-copy"></a>

 若要在單一動作中複製快照跨區域和跨帳戶，您必須先與目標 AWS 帳戶共用快照。如果快照已加密，您還必須與目標 AWS 帳戶共用 AWS KMS 金鑰。如果快照使用預設 AWS KMS 金鑰加密，您必須先複製快照，以使用客戶受管金鑰重新加密快照，再與目標帳戶共用快照。共用後，您可以從目標帳戶啟動該帳戶 （區域內或跨區域） 的副本。

### 加密快照複製的考量事項
<a name="USER_CopySnapshot.Encryption"></a>

您可以複製使用 KMS 金鑰所加密的快照。如果您複製加密快照，則快照的副本也必須加密。如果您在相同的 中複製加密快照 AWS 區域，您可以使用與原始快照相同的 KMS 金鑰來加密複本。或者，您可以指定不同的 KMS 金鑰。

若要跨區域複製加密的快照，就必須指定在目的地 AWS 區域中有效的 KMS 金鑰。可以是特定區域專用的 KMS 金鑰，也可以是多區域金鑰。如需多區域 KMS 金鑰的詳細資訊，請參閱[使用 AWS KMS中的多區域金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html)。

在整個複製過程中來源快照仍會保持加密狀態。如需更多詳細資訊，請參閱 [Amazon RDS 加密資料庫執行個體的限制](Overview.Encryption.md#Overview.Encryption.Limitations)。

您也可以將未加密快照的副本加密。這樣可以快速將加密新增至先前未加密的資料庫執行個體。若要完成此操作，當您準備好加密資料庫執行個體時，可以建立其快照。然後建立該快照的複本，並指定 KMS 金鑰以加密該快照複本。之後，您可以從加密快照還原加密的資料庫執行個體。

**重要**  
當您將明確拒絕陳述式用於 Amazon RDS 等受管服務的 AWS KMS 金鑰政策中的所有資源 (\$1) 時，您必須指定允許資源擁有帳戶的條件。如果沒有此條件，複製操作可能會失敗，即使拒絕規則包含 IAM 使用者的例外狀況亦然。

如需 Amazon RDS AWS KMS 金鑰管理的詳細資訊，請參閱 [AWS KMS key 管理](Overview.Encryption.Keys.md)。

#### 複製加密快照所需的許可
<a name="USER_CopySnapshot.Encryption.Permissions"></a>

若要複製加密的資料庫快照，您的使用者必須具有下列許可才能使用 Amazon RDS 加密。
+ `kms:DescribeKey`
+ `kms:CreateGrant`
+ `kms:Decrypt`
+ `kms:Encrypt`
+ `kms:GenerateDataKey`
+ `kms:GenerateDataKeyWithoutPlaintext`
+ `kms:ReEncrypt`

如果您使用 IAM 政策條件來限制 AWS KMS 授予操作，請確定您的政策包含 Amazon RDS 所需的所有操作。如果您在跨區域複製加密快照時收到`KMSKeyNotAccessibleFault`錯誤，請確認您的 IAM 政策包含上述所有必要的 AWS KMS 授予操作。

### 增量快照複製的考量事項
<a name="USER_CopySnapshot.Incremental"></a>

*增量式*快照僅含相同資料庫執行個體最近一次拍攝快照之後所變更的資料。增量式快照複製速度較快，而且儲存成本較完整的快照複製低。

快照複製是否為增量式，取決於最近完成的快照複製和來源快照。如果刪除了最近的快照複本，下一個複本則會是完整複本，而不是增量式複本。快照複製的類型會與來源快照相同。如果來源快照是增量快照，快照複製就會是增量快照。增量也取決於自上次快照以來，來源資料庫執行個體中發生的變更數量。

當您跨 複製快照時 AWS 帳戶，只有在符合下列所有條件時，複本才會是增量複本：
+ 最新的快照複製屬於相同的來源資料庫執行個體，且仍存在於目的地帳戶中。
+ 目的地帳戶中快照的所有複本均未加密，或是已使用相同的 KMS 金鑰進行加密。如果加密，則它們必須具有相同的歷程記錄，即對應層級的相符繼承深度和一致的加密金鑰。
+ 如果來源資料庫執行個體是多可用區域執行個體，則自上次擷取快照以來，尚未容錯移轉至另一個可用區域。

下列範例說明完整快照和增量快照之間的不同。這些範例同時適用於共用快照和非共用快照。


| 快照 | 加密金鑰 | 完整或增量快照 | 
| --- | --- | --- | 
| S1 | K1 | 完整 | 
| S2 | K1 | S1 增量 | 
| S3 | K1 | S2 增量 | 
| S4 | K1 | S3 增量 | 
| S1 (S1C) 副本 | K2 | 完整 | 
| S2 (S2C) 副本 | K3 | 完整 | 
| S3 (S3C) 副本 | K3 | S2C 增量 | 
| S4 (S4C) 副本 | K3 | S3C 增量 | 
| S4 (S4C2) 副本 2 | K4 | 完整 | 

**注意**  
在這些範例中，僅先前的快照仍存在時，快照 S2、S3 和 S4 才是增量快照。  
這也適用於副本。僅先前的副本仍存在時，快照副本 S3C 和 S4C 才是增量快照。

如需跨 複製增量快照的資訊 AWS 區域，請參閱 [完整複本和增量複本](#USER_CopySnapshot.AcrossRegions.Full)。

### 跨區域快照複製的考量事項
<a name="USER_CopySnapshot.AcrossRegions"></a>

您可跨 AWS 區域複製資料庫快照。跨區域快照複製需支付資料傳輸費用。跨區域快照複製受某些限制條件和考量。

#### 請求跨區域資料庫快照複本
<a name="USER_CopySnapshot.AcrossRegions.Policy"></a>

若要與來源區域通訊，以請求跨區域資料庫快照複本，請求者 (IAM 角色或 IAM 使用者) 必須具有來源資料庫快照和來源區域的存取權。

請求者的 IAM 政策中的某些條件可能會導致請求失敗。以下範例假設您正在將資料庫快照從 美國東部 (俄亥俄) 複製到 US East (N. Virginia)。以下範例顯示請求者 IAM 政策中導致請求失敗的條件：
+ 請求者的政策具有 `aws:RequestedRegion` 的條件。

  ```
  ...
  "Effect": "Allow",
  "Action": "rds:CopyDBSnapshot",
  "Resource": "*",
  "Condition": {
      "StringEquals": {
          "aws:RequestedRegion": "us-east-1"
      }
  }
  ```

  由於政策不允許存取來源區域，請求失敗。若要成功請求，請同時指定來源區域和目的地區域。

  ```
  ...
  "Effect": "Allow",
  "Action": "rds:CopyDBSnapshot",
  "Resource": "*",
  "Condition": {
      "StringEquals": {
          "aws:RequestedRegion": [
              "us-east-1",
              "us-east-2"
          ]
      }
  }
  ```
+ 請求者的政策不允許存取來源資料庫快照。

  ```
  ...
  "Effect": "Allow",
  "Action": "rds:CopyDBSnapshot",
  "Resource": "arn:aws:rds:us-east-1:123456789012:snapshot:target-snapshot"
  ...
  ```

  若要成功要求，請同時指定來源快照和目的地快照。

  ```
  ...
  "Effect": "Allow",
  "Action": "rds:CopyDBSnapshot",
  "Resource": [
      "arn:aws:rds:us-east-1:123456789012:snapshot:target-snapshot",
      "arn:aws:rds:us-east-2:123456789012:snapshot:source-snapshot"
  ]
  ...
  ```
+ 請求者的政策拒絕 `aws:ViaAWSService`。

  ```
  ...
  "Effect": "Allow",
  "Action": "rds:CopyDBSnapshot",
  "Resource": "*",
  "Condition": {
      "Bool": {"aws:ViaAWSService": "false"}
  }
  ```

  與來源區域的通訊由 RDS 代表請求者進行。對於成功的請求，請勿拒絕 AWS 服務發出的呼叫。
+ 請求者的政策具有 `aws:SourceVpc` 或 `aws:SourceVpce` 的條件。

  這些請求可能會失敗，因為當 RDS 呼叫遠端區域時，其不是來自指定的 VPC 或 VPC 端點。

如果您需要使用會導致請求失敗的先前條件之一，則可以在政策中包含 `aws:CalledVia` 的第二個陳述式，以使請求成功。例如，您可以如下所示使用 `aws:CalledVia` 搭配 `aws:SourceVpce`：

```
...
"Effect": "Allow",
"Action": "rds:CopyDBSnapshot",
"Resource": "*",
"Condition": {
    "Condition" : { 
        "ForAnyValue:StringEquals" : {
          "aws:SourceVpce": "vpce-1a2b3c4d"
        }
     }
},
{
    "Effect": "Allow",
    "Action": [
        "rds:CopyDBSnapshot"
    ],
    "Resource": "*",
    "Condition": {
        "ForAnyValue:StringEquals": {
            "aws:CalledVia": [
                "rds.amazonaws.com"
            ]
        }
    }
}
```

如需詳細資訊，請參閱 *IAM 使用者指南* 中的 [IAM 中的政策和許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)。

#### 授權快照複製
<a name="USER_CopySnapshot.AcrossRegions.Auth"></a>

跨區域資料庫快照複製請求之後傳回 `success`，RDS 會在背景中啟動複本。系統會建立 RDS 存取來源快照的授權。此授權將來源資料庫快照連結至目標資料庫快照，並允許 RDS 僅複製到指定的目標快照。

 授權由 RDS 使用服務連結 IAM 角色中的 `rds:CrossRegionCommunication` 許可來驗證。如果授權複本，RDS 會與來源區域通訊並完成複本。

 對於之前未透過 `CopyDBSnapshot` 請求授權的資料庫快照，RDS 將無法存取。複製完成時，授權即會撤銷。

 RDS 使用服務連結的角色來驗證來源區域中的授權。如果您在複製程序期間刪除服務連結的角色，複本則會失敗。

如需詳細資訊，請參閱 *IAM 使用者指南*中的[使用服務連結角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html)。

#### 使用 AWS Security Token Service 登入資料
<a name="USER_CopySnapshot.AcrossRegions.assumeRole"></a>

來自 global AWS Security Token Service (AWS STS) 端點的工作階段字符僅在預設啟用 AWS 區域 的 中有效 （商業區域）。如果您在 中使用來自 `assumeRole` API 操作的登入資料 AWS STS，如果來源區域是選擇加入區域，請使用區域端點。否則，請求將失敗。這是因為您的登入資料在兩個區域中都必須有效，只有在使用區域 AWS STS 端點時，才適用於選擇加入區域。

若要使用全域端點，請確保操作時在這兩個區域均已將其啟用。在 AWS STS 帳戶設定`Valid in all AWS 區域`中將全域端點設定為 。

 相同的規則適用於預先簽章 URL 參數中的登入資料。

如需詳細資訊，請參閱《*IAM 使用者指南*》中的[管理 中的 AWS STS AWS 區域](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html)。

#### 延遲和多個複製要求
<a name="USER_CopySnapshot.AcrossRegions.Latency"></a>

根據 AWS 區域 涉及的內容和要複製的資料量，跨區域快照複本可能需要數小時才能完成。

有時某個來源 AWS 區域會出現大量跨區域快照複製請求。在這種情況下，Amazon RDS 可能會將來自該來源的新跨區域複製請求 AWS 區域 放入佇列，直到某些進行中的複製完成為止。位於佇列中的複製請求不會顯示進度資訊。複製開始時才會顯示進度資訊。

#### 完整複本和增量複本
<a name="USER_CopySnapshot.AcrossRegions.Full"></a>

當您將快照複製到 AWS 區域 與來源快照不同的 時，第一個複本是完整快照複本，即使您複製增量快照也一樣。完整的快照副本內含所有還原資料庫執行個體所需的資料及中繼資料。完成第一次快照複製後，即可將相同資料庫執行個體的增量快照，複製到相同 AWS 帳戶中的相同目的地區域。如需增量快照的詳細資訊，請參閱[增量快照複製的考量事項](#USER_CopySnapshot.Incremental)。

未加密和加密的快照都 AWS 區域 支援跨 進行增量快照複製。

當您跨 複製快照時 AWS 區域，如果符合下列條件，複本即為增量複本：
+ 之前已將快照複製到目的地區域。
+ 最近的快照副本仍存在於目的地區域中。
+ 目的地區域中快照的所有複本均未加密，或是已使用相同的 KMS 金鑰進行加密。

### 選項群組的考量事項
<a name="USER_CopySnapshot.Options"></a>

資料庫選項群組專屬於在其中建立 AWS 區域 的 ，您無法在另一個 AWS 區域 中使用選項群組 AWS 區域。

對於 Oracle 資料庫，您可以使用 AWS CLI 或 RDS API 從已與您的 共用的快照複製自訂資料庫選項群組 AWS 帳戶。您只能複製相同 AWS 區域內的選項群組。如果選項群組已複製到目的地帳戶，且自複製之後未對其進行任何變更，則不會複製該選項群組。如果之前已複製來源選項群組，但此群組自複製後已變更，則 RDS 會將新版本複製到目的地帳戶。不會複製預設選項群組。

當您跨區域複製快照時，您可以為快照指定新的選項群組。建議在複製快照之前準備新的選項群組。在目的地中 AWS 區域，使用與原始資料庫執行個體相同的設定建立選項群組。如果新的 中已存在， AWS 區域您可以使用該項目。

有時您可能會複製快照，而不是為快照指定新的選項群組。此時，在您還原快照時，資料庫執行個體會取得預設選項群組。如要提供原始的相同選項給新的資料庫執行個體，需要執行下列動作：

1. 在目的地中 AWS 區域，使用與原始資料庫執行個體相同的設定建立選項群組。如果新的 中已存在， AWS 區域您可以使用該項目。

1. 在目的地還原快照後 AWS 區域，請修改新的資料庫執行個體，並從上一個步驟新增新的或現有的選項群組。

### 參數群組的考量事項
<a name="USER_CopySnapshot.Parameters"></a>

當您跨區域複製快照時，副本不包含原始資料庫執行個體所使用的參數群組。當您還原快照以建立新的資料庫執行個體時，該資料庫執行個體會取得 AWS 區域 其建立所在 的預設參數群組。如要提供原始的相同參數給新的資料庫執行個體，需要執行下列動作：

1. 在目的地中 AWS 區域，建立與原始資料庫執行個體具有相同設定的資料庫參數群組。如果新的 中已存在， AWS 區域您可以使用該項目。

1. 在目的地還原快照後 AWS 區域，請修改新的資料庫執行個體，並從上一個步驟新增新的或現有的參數群組。

# 共用 Amazon RDS 的資料庫快照
<a name="USER_ShareSnapshot"></a>

使用 Amazon RDS 時，您可以透過下列方式共用手動資料庫快照：
+ 共用手動資料庫快照，無論是加密或未加密，都可讓 獲得授權 AWS 帳戶 來複製快照。
+ 共用未加密的手動資料庫快照可讓 獲得授權 AWS 帳戶 ，直接從快照還原資料庫執行個體，而不是取得複本並從中還原。但是，您無法從已共用又加密的資料庫快照來還原資料庫執行個體。不過，您可以複製資料庫快照，再從副本還原資料庫執行個體。

**注意**  
若要共用自動資料庫快照，請複製該自動快照來建立手動資料庫快照，然後共用該複本。此程序也適用於 AWS Backup 產生的資源。

如需有關複製快照的詳細資訊，請參閱[複製 Amazon RDS 的資料庫快照](USER_CopySnapshot.md)。如需有關從資料庫快照還原資料庫執行個體的詳細資訊，請參閱 [還原至資料庫執行個體](USER_RestoreFromSnapshot.md)。

您可以與其他最多 20 個 共用手動快照 AWS 帳戶。

當您與其他 共用手動快照時，適用下列限制 AWS 帳戶：
+ 當您使用 AWS Command Line Interface (AWS CLI) 或 Amazon RDS API 從共用快照還原資料庫執行個體時，您必須指定共用快照的 Amazon Resource Name (ARN) 做為快照識別符。
+ 您無法共用使用具有永久或持久選項的選項群組的資料庫快照，但具有 `Timezone` 或 `OLS` 選項 (或兩者) 的 Oracle 資料庫執行個體除外。

  無法從選項群組中移除*永久選項*。將具有持續選項的選項群組指派給資料庫執行個體後，就無法從資料庫執行個體中移除此選項群組。

  下表列出永久和持續選項及其相關的資料庫引擎。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/USER_ShareSnapshot.html)

  針對 Oracle 資料庫執行個體，您可以複製具有 `Timezone` 或 `OLS` 選項 (或兩者) 的共用資料庫快照。作法是在您複製資料庫快照時，指定包含這些選項的目標選項群組。只有對執行 Oracle 12.2 版或更高版本的 Oracle 資料庫執行個體，OLS 才是永久和持續的選項。如需這些選項的詳細資訊，請參閱 [Oracle 時區](Appendix.Oracle.Options.Timezone.md)和 [Oracle Label Security](Oracle.Options.OLS.md)。
+ 您無法共用多可用區域資料庫叢集的快照。
+ 當快照包含額外的儲存磁碟區時，您無法共用快照。

如需共用公有快照、共用加密快照和停止快照共用的相關資訊，請參閱下列主題。

**主題**
+ [共用 Amazon RDS 的公有快照](USER_ShareSnapshot.Public.md)
+ [共用 Amazon RDS 的加密快照](share-encrypted-snapshot.md)
+ [停止 Amazon RDS 的快照共用](share-snapshot-stop.md)

## 共用快照
<a name="USER_ShareSnapshot.Sharing"></a>

您可以使用 AWS CLI、 或 RDS API AWS 管理主控台共用資料庫快照。

### 主控台
<a name="USER_ShareSnapshot.Console"></a>

使用 Amazon RDS 主控台，您可以與最多 20 個 共用手動資料庫快照 AWS 帳戶。您也可以使用主控台來停止將手動快照共用給一或多個帳戶。

**使用 Amazon RDS 主控台來分享手動資料庫 快照**

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

1. 在導覽窗格中，選擇 **Snapshots (快照)**。

1. 選取您要共享的手動快照。

1. 針對 **Actions** (動作)，選擇 **Share snapshot** (共用快照)。

1. 在 **DB snapshot visibility (資料庫快照可見度)** 中，選擇下列其中一個選項。
   + 如果來源未加密，請選擇**公**有以允許所有 AWS 帳戶從手動資料庫快照還原資料庫執行個體，或選擇**私有**以僅允許 AWS 帳戶 您指定從手動資料庫快照還原資料庫執行個體。
**警告**  
如果您將**資料庫快照可見**性設定為**公**有，所有 AWS 帳戶 都可以從手動資料庫快照還原資料庫執行個體，並存取您的資料。請勿將任何包含私人資訊的手動資料庫快照以 **Public (公有)** 形式共用。  
如需詳細資訊，請參閱[共用 Amazon RDS 的公有快照](USER_ShareSnapshot.Public.md)。
   + 如果來源資料庫叢集已加密，**DB snapshot visibility (資料庫快照可見度)** 會設為 **Private (私有)**，因為加密快照無法以公有形式共用。
**注意**  
使用預設加密的快照 AWS KMS key 無法共用。如需如何解決此問題的資訊，請參閱 [共用 Amazon RDS 的加密快照](share-encrypted-snapshot.md)。

1. 針對**AWS 帳戶 ID**，輸入您要允許 從手動快照還原資料庫執行個體之帳戶的 AWS 帳戶 識別符，然後選擇**新增**。重複 以包含其他識別 AWS 帳戶 符，最多 20 個 AWS 帳戶。

   如果您在將 AWS 帳戶 識別符新增至允許的帳戶清單時發生錯誤，您可以選擇不正確 AWS 帳戶 識別符右側的**刪除**，將其從清單中刪除。  
![\[允許 AWS 帳戶 還原手動資料庫快照\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/ShareSnapshot_add.png)

1. 為 AWS 帳戶 要允許還原手動快照的所有 新增識別符後，請選擇**儲存**以儲存變更。

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

若要共享資料庫快照，請使用 `aws rds modify-db-snapshot-attribute` 命令。使用 `--values-to-add` 參數來新增 AWS 帳戶 的 ID 清單，以授權這些帳戶還原手動快照。

**Example 與單一帳戶共用快照**  
下列範例可讓 AWS 帳戶 識別符`123456789012`還原名為 的資料庫快照`db7-snapshot`。  
針對 Linux、macOS 或 Unix：  

```
aws rds modify-db-snapshot-attribute \
--db-snapshot-identifier db7-snapshot \
--attribute-name restore \
--values-to-add 123456789012
```
在 Windows 中：  

```
aws rds modify-db-snapshot-attribute ^
--db-snapshot-identifier db7-snapshot ^
--attribute-name restore ^
--values-to-add 123456789012
```

**Example 與多個帳戶共用快照**  
下列範例會啟用兩個 AWS 帳戶 識別符 `111122223333`和 `444455556666`，以還原名為 的資料庫快照`manual-snapshot1`。  
針對 Linux、macOS 或 Unix：  

```
aws rds modify-db-snapshot-attribute \
--db-snapshot-identifier manual-snapshot1 \
--attribute-name restore \
--values-to-add {"111122223333","444455556666"}
```
在 Windows 中：  

```
aws rds modify-db-snapshot-attribute ^
--db-snapshot-identifier manual-snapshot1 ^
--attribute-name restore ^
--values-to-add "[\"111122223333\",\"444455556666\"]"
```
使用 Windows 命令提示字元時，您必須在 JSON 程式碼中的雙引號 (") 開頭加上反斜線 (\$1)，以逸出雙引號。

若要列出 AWS 帳戶 已啟用以還原快照的 ，請使用 [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-snapshot-attributes.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-snapshot-attributes.html) AWS CLI 命令。

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

您也可以 AWS 帳戶 使用 Amazon RDS API 與其他 共用手動資料庫快照。若要這樣做，請呼叫 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBSnapshotAttribute.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBSnapshotAttribute.html) 作業。將 `restore` 指定為 `AttributeName`，並使用 `ValuesToAdd` 參數來新增 AWS 帳戶 的 ID 清單，以授權這些帳戶還原手動快照。

若要公開手動快照並供所有人還原 AWS 帳戶，請使用 值 `all`。不過，對於任何手動快照，如果含有您不想讓所有 `all` 取得的私人資訊，請小心不要新增 AWS 帳戶值。另外，也不要對加密快照指定 `all`，因為不支援將這種快照變成公有。

若要列出所有 AWS 帳戶 允許還原快照的 ，請使用 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBSnapshotAttributes.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBSnapshotAttributes.html) API 操作。

# 共用 Amazon RDS 的公有快照
<a name="USER_ShareSnapshot.Public"></a>

您可以將未加密的手動快照以公有形式共用，讓所有 AWS 帳戶 都可使用此快照。確保在公開共用快照時，公用快照中不包含您的任何私人資訊。

公開共用快照時，其會給予所有 AWS 帳戶 許可來複製快照並從中建立資料庫執行個體。

您無需對其他帳戶所擁有的公有快照備份儲存支付費用。您只需為您擁有的快照付費。

若您複製公有快照，則您擁有該副本。您需要為快照副本的備份儲存支付費用。若您從公用快照建立一個資料庫執行個體，則需支付該資料庫執行個體的費用。如需 Amazon RDS 定價資訊，請參閱 [Amazon RDS 產品頁面](https://aws.amazon.com/rds/pricing)。

您僅能刪除您擁有的公用快照。如要刪除共用或公有快照，則必須登入擁有該快照的 AWS 帳戶。

## 檢視其他 AWS 帳戶 所擁有的公有快照
<a name="USER_ShareSnapshot.Public.View.Console"></a>

您可在 Amazon RDS 主控台中 **Snapshots** (快照) 頁面的**Public** (公用) 索引標籤上檢視特定 AWS 區域中其他賬戶擁有的公用快照。您的快照 (您帳戶擁有的快照) 不會顯示在此索引標籤上。

**如要檢視公有快照**

1. 前往 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)，開啟 Amazon RDS 主控台。

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 選擇 **Public** (公有) 索引標籤。

   公有快照隨即顯示。您可在 **Owner** (擁有者) 資料欄中查看哪個帳戶擁有公有快照。
**注意**  
您可能需要選取 **Public snapshots** (公用快照) 清單右上角的齒輪圖示來修改頁面偏好設定，以查看此資料欄。

## 檢視您自己的公有快照
<a name="USER_ShareSnapshot.Public.View.CLI"></a>

您可以使用下列 AWS CLI 命令 (僅限 Unix)，在特定 AWS 帳戶 區域中檢視 AWS 擁有的公有快照。

```
aws rds describe-db-snapshots --snapshot-type public --include-public | grep account_number
```

若您有公有快照，則傳回的輸出類似下列範例。

```
"DBSnapshotArn": "arn:aws:rds:us-east-1:123456789012:snapshot:mysnapshot1",
"DBSnapshotArn": "arn:aws:rds:us-east-1:123456789012:snapshot:mysnapshot2",
```

**注意**  
您可能會看到 `DBSnapshotIdentifier` 或 `SourceDBSnapshotIdentifier` 的重複項目。

## 從已棄用的資料庫引擎版本共用公有快照
<a name="USER_ShareSnapshot.Public.deprecated"></a>

不支援從已棄用的資料庫引擎版本還原或複製公有快照。

RDS for Oracle 和 RDS for PostgreSQL 資料庫引擎支援直接升級資料庫快照引擎版本。您可以升級快照，然後公開重新共用快照。如需詳細資訊，請參閱下列內容：
+ [升級 Oracle 資料庫快照](USER_UpgradeDBSnapshot.Oracle.md)
+ [升級 PostgreSQL 資料庫快照引擎版本](USER_UpgradeDBSnapshot.PostgreSQL.md)

對於其他資料庫引擎，請執行下列步驟，讓現有不支援的公有快照可供還原或複製之用：

1. 將快照標記為私有。

1. 還原快照。

1. 將還原的資料庫執行個體升級至支援的引擎版本。

1. 建立新快照。

1. 公開重新共用快照。

# 共用 Amazon RDS 的加密快照
<a name="share-encrypted-snapshot"></a>

您可共用已使用 AES-256 加密演算法來「靜態」加密的資料庫快照，如 [加密 Amazon RDS 資源](Overview.Encryption.md) 所述。

共用加密快照有下列限制：
+ 您無法將加密快照以公有形式共用。
+ 您無法共用使用透明資料加密 (TDE) 所加密的 Oracle 或 Microsoft SQL Server 快照。
+ 如果快照的加密方式是使用共用快照的 AWS 帳戶 之預設 KMS 金鑰，則您無法共用此快照。

  如需有關 Amazon RDS AWS KMS 金鑰管理的詳細資訊，請參閱 [AWS KMS key 管理](Overview.Encryption.Keys.md)。

若要解決預設 KMS 金鑰問題，請執行下列任務：

1. [建立客戶自管金鑰並授予存取權](#share-encrypted-snapshot.cmk).

1. [從來源帳戶複製和共用快照](#share-encrypted-snapshot.share).

1. [複製目標帳戶中的共用快照](#share-encrypted-snapshot.target).

## 建立客戶自管金鑰並授予存取權
<a name="share-encrypted-snapshot.cmk"></a>

首先，在與加密資料庫快照相同的 AWS 區域 中建立自訂 KMS 金鑰。建立客戶自管金鑰時，您可以為另一個 AWS 帳戶 提供存取權。

**注意**  
當金鑰政策授予來源和目標帳戶的存取權時，您也可以使用另一個 AWS 帳戶的 KMS 金鑰。

**建立客戶自管金鑰並授予存取權**

1. 從來源 AWS 帳戶 登入 AWS 管理主控台。

1. 開啟位於 [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) 的 AWS KMS 主控台。

1. 若要變更 AWS 區域，請使用頁面右上角的區域選取器。

1. 在導覽窗格中，選擇 **Customer managed keys** (客戶受管金鑰)。

1. 選擇**建立金鑰**。

1. 在**設定金鑰**頁面上：

   1. 對於**金鑰類型**，選取**對稱**。

   1. 對於**金鑰用途**，選取**加密和解密**。

   1. 展開 **Advanced options (進階選項)**。

   1. 對於**金鑰材料來源**，選取 **KMS**。

   1. 對於**區域性**，選取**單一區域金鑰**。

   1. 選擇**下一步**。

1. 在**新增標籤**頁面上：

   1. 對於**別名**，輸入 KMS 金鑰的顯示名稱，例如 **share-snapshot**。

   1. (選用) 輸入 KMS 金鑰的描述。

   1. (選用) 將標籤新增至您的 KMS 金鑰。

   1. 選擇**下一步**。

1. 在**定義金鑰管理許可**頁面上，選擇**下一步**。

1. 在**定義金鑰使用許可**頁面上：

   1. 對於**其他 AWS 帳戶**，選擇**新增另一個 AWS 帳戶**。

   1. 輸入您要授予存取權之 AWS 帳戶 的 ID。

      您可以對多個 AWS 帳戶 授予存取權。

   1. 選擇**下一步**。

1. 檢閱您的 KMS 金鑰，然後選擇**完成**。

## 從來源帳戶複製和共用快照
<a name="share-encrypted-snapshot.share"></a>

接下來，您可以使用客戶自管金鑰將來源資料庫快照複製到新的快照。然後與目標 AWS 帳戶 共用。

**複製和共用快照**

1. 從來源 AWS 帳戶 登入 AWS 管理主控台。

1. 前往 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)，開啟 Amazon RDS 主控台。

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 選取您要複製的資料庫快照。

1. 針對 **Actions** (動作) 選擇 **Copy snapshot** (複製快照)。

1. 在**複製快照**頁面上：

   1. 對於**目的地區域**，選擇您在先前程序中建立客戶自管金鑰所在的 AWS 區域。

   1. 在**新的資料庫快照識別符**中，輸入資料庫快照複本的名稱。

   1. 對於 **AWS KMS key**，選擇您建立的客戶自管金鑰。  
![\[選擇客戶自管金鑰。\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/copy-encrypted-snapshot.png)

   1. 選擇 **Copy Snapshot (複製快照)**。

1. 當快照複本可用時，請選取它。

1. 針對 **Actions** (動作)，選擇 **Share snapshot** (共用快照)。

1. 在**快照許可**頁面上：

   1. 輸入您要共用快照複本的 **AWS 帳戶 ID**，然後選擇**新增**。

   1. 選擇**儲存**。

   快照即會共用。

## 複製目標帳戶中的共用快照
<a name="share-encrypted-snapshot.target"></a>

現在，您可以在目標 AWS 帳戶 中複製共用快照。

**複製共用快照**

1. 從目標 AWS 帳戶 登入 AWS 管理主控台。

1. 前往 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)，開啟 Amazon RDS 主控台。

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 選擇**與我共用**索引標籤。

1. 選取共用快照。

1. 針對 **Actions** (動作) 選擇 **Copy snapshot** (複製快照)。

1. 選擇您複製快照的設定，如先前程序所示，但使用屬於目標帳戶的 AWS KMS key。

   選擇 **Copy Snapshot (複製快照)**。

# 停止 Amazon RDS 的快照共用
<a name="share-snapshot-stop"></a>

若要停止共用資料庫快照，請從目標移除許可 AWS 帳戶。

## 主控台
<a name="share-snapshot-stop.CON"></a>

**停止與 共用手動資料庫快照 AWS 帳戶**

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

1. 在導覽窗格中，選擇 **Snapshots (快照)**。

1. 選取您要停止共享的手動快照。

1. 選擇 **Actions** (動作)，然後選擇 **Share snapshot** (共用快照)。

1. 若要移除 的許可 AWS 帳戶，請從授權**** AWS 帳戶清單中選擇刪除該帳戶的帳戶識別符。

1. 選擇**儲存**，以儲存變更。

## CLI
<a name="share-snapshot-stop.CLI"></a>

若要從清單中移除 AWS 帳戶 識別符，請使用 `--values-to-remove` 參數。

**Example 停止快照共用**  
下列範例可防止 AWS 帳戶 ID 444455556666 還原快照。  
針對 Linux、macOS 或 Unix：  

```
aws rds modify-db-snapshot-attribute \
--db-snapshot-identifier manual-snapshot1 \
--attribute-name restore \
--values-to-remove 444455556666
```
在 Windows 中：  

```
aws rds modify-db-snapshot-attribute ^
--db-snapshot-identifier manual-snapshot1 ^
--attribute-name restore ^
--values-to-remove 444455556666
```

## RDS API
<a name="share-snapshot-stop.API"></a>

若要移除 的共用許可 AWS 帳戶，請使用 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterSnapshotAttribute.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterSnapshotAttribute.html)操作，並將 `AttributeName` 設定為 `restore`和 `ValuesToRemove` 參數。若要將手動快照標示為私有，請從 `all` 屬性的值清單移除 `restore` 值。

# 為 Amazon RDS 將資料庫快照資料匯出至 Amazon S3
<a name="USER_ExportSnapshot"></a>

您可以將資料庫快照資料匯出至 Amazon S3 儲存貯體。匯出程序會在背景中執行，不會影響您作用中資料庫的效能。

當您匯出資料庫快照時，Amazon RDS 會從快照擷取資料，並將其存放於 Amazon S3 儲存貯體中。資料會以壓縮且一致的 Apache Parquet 格式存放。

您可以匯出所有類型的資料庫快照，包括手動快照、自動化系統快照，以及 AWS Backup 服務建立的快照。根據預設會匯出快照中的所有資料。但是，您可以選擇匯出特定資料庫、結構描述或資料表集。

匯出資料後，您可以直接透過 Amazon Athena 或 Amazon Redshift Spectrum 等工具分析匯出後的資料。有關使用 Athena 來讀取 Parquet 資料的詳細資訊，請參閱*Amazon Athena 使用者指南*中的 [Parquet SerDe](https://docs.aws.amazon.com/athena/latest/ug/parquet-serde.html)。如需有關使用 Redshift Spectrum 來讀取 Parquet 資料的詳細資訊，請參閱*《Amazon Redshift 資料庫開發人員指南》*中的[從單欄式資料格式的 COPY](https://docs.aws.amazon.com/redshift/latest/dg/copy-usage_notes-copy-from-columnar.html)。

**警告**  
您無法將匯出的快照資料從 S3 還原至新的資料庫執行個體，或將快照資料從 S3 匯入至現有的資料庫執行個體。不過，您可以使用 Amazon Athena 或 Redshift Spectrum 處理資料，以進行分析。此外，您可以使用 AWS Glue 轉換資料，然後使用 AWS DMS 或自訂指令碼等工具將其匯入 Amazon RDS。

如需將資料庫快照匯出至 Amazon S3 的詳細資訊，請參閱下列主題。

**主題**
+ [監控 Amazon RDS 的快照匯出](USER_ExportSnapshot.Monitoring.md)
+ [取消 Amazon RDS 的快照匯出任務](USER_ExportSnapshot.Canceling.md)
+ [Amazon RDS 的 Amazon S3 匯出任務失敗訊息](USER_ExportSnapshot.failure-msg.md)
+ [對 RDS for PostgreSQL 許可錯誤進行疑難排解](USER_ExportSnapshot.postgres-permissions.md)
+ [匯出至 Amazon S3 for Amazon RDS 的檔案命名慣例](USER_ExportSnapshot.FileNames.md)
+ [Amazon RDS 匯出至 Amazon S3 儲存貯體時的資料轉換](USER_ExportSnapshot.data-types.md)

## 匯出快照資料概觀
<a name="USER_ExportSnapshot.Overview"></a>

您可以使用下列程序，將資料庫快照資料匯出至 Amazon S3 儲存貯體。如需詳細資訊，請參閱下列各節。

1. 識別要匯出的快照

   使用現有的自動化或手動快照，或手動建立資料庫執行個體或多可用區域資料庫叢集的快照。

1. 設定對 Amazon S3 儲存貯體的存取。

   「儲存貯體」**是 Amazon S3 物件或檔案的容器。如要提供存取儲存貯體的資訊，請採取下列步驟：

   1. 識別要匯出快照的目標 S3 儲存貯體。S3 儲存貯體必須與快照位於相同的 AWS 區域。如需詳細資訊，請參閱[識別要匯出的 Amazon S3 儲存貯體](#USER_ExportSnapshot.SetupBucket)。

   1. 建立 AWS Identity and Access Management (IAM) 角色，授予快照匯出任務對 S3 儲存貯體的存取權。如需詳細資訊，請參閱[使用 IAM 角色提供對 Amazon S3 儲存貯體的存取權](#USER_ExportSnapshot.SetupIAMRole)。

1. 為 AWS KMS key 伺服器端加密建立對稱加密。快照匯出任務會使用 KMS 金鑰，在將匯出資料寫入 S3 時設定 AWS KMS 伺服器端加密。

   KMS 金鑰政策必須同時包含 `kms:CreateGrant` 和 `kms:DescribeKey` 許可。如需在 Amazon RDS 中使用 KMS 金鑰的詳細資訊，請參閱 [AWS KMS key 管理](Overview.Encryption.Keys.md)。

   如果您的 KMS 金鑰政策中有拒絕陳述式，請務必明確排除 AWS 服務主體 `export.rds.amazonaws.com`。

   您可以在 AWS 帳戶中使用 KMS 金鑰，也可以使用跨帳戶 KMS 金鑰。如需詳細資訊，請參閱[使用跨帳戶 AWS KMS key 加密 Amazon S3 匯出](#USER_ExportSnapshot.CMK)。

1. 使用主控台或 `start-export-task` CLI 命令將快照匯出至 Amazon S3。如需詳細資訊，請參閱[將資料庫快照匯出至 Amazon S3 儲存貯體](#USER_ExportSnapshot.Exporting)。

1. 若要存取 Amazon S3 儲存貯體中您匯出的資料，請參閱《*Amazon Simple Storage Service 使用者指南*》中的[上傳、下載及管理物件](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/upload-download-objects.html)。

## 設定對 Amazon S3 儲存貯體的存取權
<a name="USER_ExportSnapshot.Setup"></a>

如要將資料庫快照資料匯出至 Amazon S3 檔案，您首先要給予快照存取 Amazon S3 儲存貯體的許可。您接著可以建立 IAM 角色，允許 Amazon RDS 服務寫入 Amazon S3 儲存貯體。

**Topics**
+ [識別要匯出的 Amazon S3 儲存貯體](#USER_ExportSnapshot.SetupBucket)
+ [使用 IAM 角色提供對 Amazon S3 儲存貯體的存取權](#USER_ExportSnapshot.SetupIAMRole)
+ [使用跨帳戶 Amazon S3 儲存貯體](#USER_ExportSnapshot.Setup.XAcctBucket)
+ [使用跨帳戶 AWS KMS key 加密 Amazon S3 匯出](#USER_ExportSnapshot.CMK)

### 識別要匯出的 Amazon S3 儲存貯體
<a name="USER_ExportSnapshot.SetupBucket"></a>

識別要匯出資料庫快照的目標 Amazon S3 儲存貯體。使用現有的 S3 儲存貯體或建立新的 S3 儲存貯體。

**注意**  
要匯出至 的 S3 儲存貯體必須與快照位於相同的 AWS 區域。

如需使用 Amazon S3 儲存貯體的詳細資訊，請參閱《*Amazon Simple Storage Service 使用者指南*》中的下列內容：
+ [ 如何檢視 S3 儲存貯體的屬性？](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/view-bucket-properties.html)
+ [ 如何啟用 Amazon S3 儲存貯體的預設加密？](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/default-bucket-encryption.html)
+ [ 如何建立 S3 儲存貯體？](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html)

### 使用 IAM 角色提供對 Amazon S3 儲存貯體的存取權
<a name="USER_ExportSnapshot.SetupIAMRole"></a>

在您將資料庫快照資料匯出至 Amazon S3 前，請給予快照匯出任務對 Amazon S3 儲存貯體的存取許可。

若要授予此許可，請建立 IAM 政策，提供儲存貯體的存取權，然後建立 IAM 角色並將該政策附加至其中。稍後您會指派 IAM 角色給您的快照匯出任務。

如需其他 Amazon S3 存取管理工具的詳細資訊，請參閱《Amazon S3 使用者指南》**中的 [Amazon S3 中的存取控制](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-management.html)。

**重要**  
如果您打算使用 AWS 管理主控台 匯出快照，您可以選擇在匯出快照時自動建立 IAM 政策和角色。如需說明，請參閱[將資料庫快照匯出至 Amazon S3 儲存貯體](#USER_ExportSnapshot.Exporting)。

**給予資料庫快照任務對 Amazon S3 的存取權限**

1. 建立 IAM 政策。此政策會提供儲存貯體和物件許可，允許您的快照匯出任務存取 Amazon S3。

   在政策中，包含下列必要動作，允許將檔案從 Amazon RDS 傳輸至 S3 儲存貯體：
   + `s3:PutObject*`
   + `s3:GetObject*` 
   + `s3:ListBucket` 
   + `s3:DeleteObject*`
   +  `s3:GetBucketLocation`

   在政策中，包含下列資源，以識別 S3 儲存貯體和該儲存貯體中的物件。以下資源清單會顯示用於存取 Amazon S3 的 Amazon Resource Name (ARN) 格式。
   + `arn:aws:s3:::amzn-s3-demo-bucket`
   + `arn:aws:s3:::amzn-s3-demo-bucket/*`

   如需為 Amazon RDS 建立 IAM 政策的詳細資訊，請參閱 [建立並使用 IAM 政策進行 IAM 資料庫存取](UsingWithRDS.IAMDBAuth.IAMPolicy.md)。另請參閱《*IAM 使用者指南*》中的[教學：建立和連接您的第一個客戶受管原則](https://docs.aws.amazon.com//IAM/latest/UserGuide/tutorial_managed-policies.html)。

   下列 AWS CLI 命令會使用這些選項建立名為 `ExportPolicy`的 IAM 政策。其將存取權授予名為 *amzn-s3-demo-bucket* 的儲存貯體。
**注意**  
在您建立政策後，請記下政策的 ARN。在後續步驟中將政策附加至 IAM 角色時，您會需要此 ARN。

   ```
   aws iam create-policy  --policy-name ExportPolicy --policy-document '{
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "ExportPolicy",
               "Effect": "Allow",
               "Action": [
                   "s3:PutObject*",
                   "s3:ListBucket",
                   "s3:GetObject*",
                   "s3:DeleteObject*",
                   "s3:GetBucketLocation"
               ],
               "Resource": [
                   "arn:aws:s3:::amzn-s3-demo-bucket",
                   "arn:aws:s3:::amzn-s3-demo-bucket/*"
               ]
           }
       ]
   }'
   ```

1. 建立 IAM 角色，讓 Amazon RDS 可以代表您擔任此 IAM 角色，以存取您的 Amazon S3 儲存貯體。如需詳細資訊，請參閱《*IAM 使用者指南*》中的[建立角色以將許可委派給 IAM 使用者](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html)。

   下列範例顯示使用 AWS CLI 命令來建立名為 的角色`rds-s3-export-role`。

   ```
   aws iam create-role  --role-name rds-s3-export-role  --assume-role-policy-document '{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Principal": {
               "Service": "export.rds.amazonaws.com"
             },
            "Action": "sts:AssumeRole"
          }
        ] 
      }'
   ```

1. 將您建立的 IAM 政策附加至您建立的 IAM 角色。

   下列 AWS CLI 命令會將先前建立的政策連接到名為 的角色`rds-s3-export-role`。將 `your-policy-arn` 取代成您在稍早步驟中記下的政策 ARN。

   ```
   aws iam attach-role-policy  --policy-arn your-policy-arn  --role-name rds-s3-export-role
   ```

### 使用跨帳戶 Amazon S3 儲存貯體
<a name="USER_ExportSnapshot.Setup.XAcctBucket"></a>

您可以跨 AWS 帳戶使用 Amazon S3 儲存貯體。若要使用跨帳戶儲存貯體，請新增儲存貯體政策，以將存取權授予您用於 S3 匯出的 IAM 角色。如需詳細資訊，請參閱[範例 2：儲存貯體擁有者授予跨帳戶儲存貯體許可](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-walkthroughs-managing-access-example2.html)。

將儲存貯體政策附加至您的儲存貯體，如下列範例所示。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::123456789012:role/Admin"
            },
            "Action": [
                "s3:PutObject*",
                "s3:ListBucket",
                "s3:GetObject*",
                "s3:DeleteObject*",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-destination-bucket",
                "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
            ]
        }
    ]
}
```

------

### 使用跨帳戶 AWS KMS key 加密 Amazon S3 匯出
<a name="USER_ExportSnapshot.CMK"></a>

您可以使用跨帳戶 AWS KMS key 來加密 Amazon S3 匯出。首先，將金鑰政策新增至本機帳戶，然後在外部帳戶中新增 IAM 政策。如需詳細資訊，請參閱[允許其他帳戶中的使用者使用 KMS 金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html)。

**使用跨帳戶 KMS 金鑰**

1. 將金鑰政策新增至本機帳戶。

   下列範例將本機帳戶 123456789012 中的許可給予外部帳戶 444455556666 中的 `ExampleRole` 和 `ExampleUser`。

   ```
   {
       "Sid": "Allow an external account to use this KMS key",
       "Effect": "Allow",
       "Principal": {
           "AWS": [
               "arn:aws:iam::444455556666:role/ExampleRole",
               "arn:aws:iam::444455556666:user/ExampleUser"
           ]
       },
       "Action": [
           "kms:Encrypt",
           "kms:Decrypt",
           "kms:ReEncrypt*",
           "kms:GenerateDataKey*",
           "kms:CreateGrant",
           "kms:DescribeKey",
           "kms:RetireGrant"
       ],
       "Resource": "*"
   }
   ```

1. 將 IAM 政策新增至外部帳戶。

   以下 IAM 政策範例允許委託人使用帳戶 123456789012 中的 KMS 金鑰來進行密碼編譯操作。若要提供此許可給帳戶 444455556666 中的 `ExampleRole` 和 `ExampleUser`，請在該帳戶中[附加政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-using.html#attach-managed-policy-console)給他們。

   ```
   {
       "Sid": "Allow use of KMS key in account 123456789012",
       "Effect": "Allow",
       "Action": [
           "kms:Encrypt",
           "kms:Decrypt",
           "kms:ReEncrypt*",
           "kms:GenerateDataKey*",
           "kms:CreateGrant",
           "kms:DescribeKey",
           "kms:RetireGrant"
       ],
       "Resource": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab"
   }
   ```

## 將資料庫快照匯出至 Amazon S3 儲存貯體
<a name="USER_ExportSnapshot.Exporting"></a>

每個 最多可以有五個同時進行的資料庫快照匯出任務 AWS 帳戶。

**注意**  
匯出 RDS 快照可能需要一段時間，依您的資料庫類型和大小而定。匯出任務會先還原和擴展整個資料庫，然後再將資料擷取到 Amazon S3。此階段期間的工作進度會顯示為**STARTING (開始)**。當任務切換到將資料匯出到 S3 時，進度會顯示為 **In progress (進行中)**。  
匯出完成所需的時間取決於儲存在資料庫中的資料。例如，如果資料表有分散均勻的數值主索引鍵或索引資料欄，則匯出速度最快。如果資料表不含適合分割的資料欄，或是資料表只在字串型資料欄上有一個索引，則會花更多時間。因為匯出使用較慢的單一執行緒處理序，所以將會耗費更長的時間。

您可以使用 AWS CLI、 或 RDS API，將資料庫快照匯出至 AWS 管理主控台 Amazon S3。若要將資料庫快照匯出至跨帳戶 Amazon S3 儲存貯體，請使用 AWS CLI 或 RDS API。

如果您使用 Lambda 函式匯出快照集，請將 `kms:DescribeKey` 動作新增至 Lambda 函式政策。如需詳細資訊，請參閱 [AWS Lambda 許可](https://docs.aws.amazon.com/lambda/latest/dg/lambda-permissions.html)。

### 主控台
<a name="USER_ExportSnapshot.ExportConsole"></a>

**Export to Amazon S3** (匯出至 Amazon S3) 主控台選項僅會針對可匯出至 Amazon S3 的快照顯示。由於下列原因，快照可能無法匯出：
+ S3 匯出不支援此資料庫引擎。
+ S3 匯出不支援此資料庫引擎版本。
+ 建立快照的 AWS 區域不支援 S3 匯出。

**匯出資料庫快照**

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

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 從標籤中，選擇您希望匯出的快照類型。

1. 在快照清單中，選擇您希望匯出的快照。

1. 針對 **Actions** (動作)，選擇 **Export to Amazon S3** (匯出至 Amazon S3)。

   隨即出現 **Export to Amazon S3 (匯出至 Amazon S3)** 視窗。

1. 針對 **Export identifier (匯出識別符)**，輸入名稱以識別匯出任務。這個值也會用來做為在 S3 儲存貯體中建立的檔案名稱。

1. 選擇匯出的資料：
   + 選擇 **All (全部)** 來匯出快照中的所有資料。
   + 選擇 **Partial (部分)** 來匯出快照的特定部分。若要識別要匯出的快照部分，請針對 **Identifier (識別符)** 輸入一或多個資料庫、結構描述或表格，並以空格分隔。

     使用下列格式：

     ```
     database[.schema][.table] database2[.schema2][.table2] ... databasen[.scheman][.tablen]
     ```

     例如：

     ```
     mydatabase mydatabase2.myschema1 mydatabase2.myschema2.mytable1 mydatabase2.myschema2.mytable2
     ```

1. 針對 **S3 bucket (S3 儲存貯體)**，選擇要匯出的儲存貯體。

   如要將匯出資料指派給 S3 儲存貯體中的資料夾路徑，請針對 **S3 prefix (S3 字首)** 輸入選用的路徑。

1. 針對 **IAM role (IAM 角色)**，您可選擇授予對您所選擇 S3 儲存貯體寫入存取權限的角色，或建立新角色。
   + 如果您透過遵循 [使用 IAM 角色提供對 Amazon S3 儲存貯體的存取權](#USER_ExportSnapshot.SetupIAMRole) 中的步驟建立了角色，請選擇該角色。
   + 如果您沒有建立授予您所選擇 S3 儲存貯體寫入存取權限的角色，請選擇 **Create a new role** (建立新角色) 以自動建立角色。接下來，為 **IAM 角色名稱 (IAM role name)** 中的角色輸入名稱。

1. 針對 **AWS KMS key**，輸入金鑰的 ARN 以加密匯出的資料。

1. 選擇 **Export to Amazon S3 (匯出至 Amazon S3)**。

### AWS CLI
<a name="USER_ExportSnapshot.ExportCLI"></a>

若要使用 將資料庫快照匯出至 Amazon S3 AWS CLI，請使用 [start-export-task](https://docs.aws.amazon.com/cli/latest/reference/rds/start-export-task.html) 命令搭配下列必要選項：
+ `--export-task-identifier` 
+ `--source-arn` 
+ `--s3-bucket-name` 
+ `--iam-role-arn` 
+ `--kms-key-id` 

在下列範例中，快照匯出任務名為 *my-snapshot-export*，會將快照匯出至名為 *amzn-s3-demo-bucket* 的 S3 儲存貯體。

**Example**  
針對 Linux、macOS 或 Unix：  

```
1. aws rds start-export-task \
2.     --export-task-identifier my-snapshot-export \
3.     --source-arn arn:aws:rds:AWS_Region:123456789012:snapshot:snapshot-name \
4.     --s3-bucket-name amzn-s3-demo-bucket \
5.     --iam-role-arn iam-role \
6.     --kms-key-id my-key
```
在 Windows 中：  

```
1. aws rds start-export-task ^
2.     --export-task-identifier my-snapshot-export ^
3.     --source-arn arn:aws:rds:AWS_Region:123456789012:snapshot:snapshot-name ^
4.     --s3-bucket-name amzn-s3-demo-bucket ^
5.     --iam-role-arn iam-role ^
6.     --kms-key-id my-key
```
範例輸出如下。  

```
{
    "Status": "STARTING", 
    "IamRoleArn": "iam-role", 
    "ExportTime": "2019-08-12T01:23:53.109Z", 
    "S3Bucket": "my-export-bucket", 
    "PercentProgress": 0, 
    "KmsKeyId": "my-key", 
    "ExportTaskIdentifier": "my-snapshot-export", 
    "TotalExtractedDataInGB": 0, 
    "TaskStartTime": "2019-11-13T19:46:00.173Z", 
    "SourceArn": "arn:aws:rds:AWS_Region:123456789012:snapshot:snapshot-name"
}
```
如要為快照匯出提供 S3 儲存貯體中的資料夾路徑，請在 [start-export-task](https://docs.aws.amazon.com/cli/latest/reference/rds/start-export-task.html) 命令中包含 `--s3-prefix` 選項。

### RDS API
<a name="USER_ExportSnapshot.ExportAPI"></a>

如要使用 Amazon RDS API 將資料庫快照匯出至 Amazon S3，請搭配下列必要參數使用 [StartExportTask](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartExportTask.html) 操作：
+ `ExportTaskIdentifier`
+ `SourceArn`
+ `S3BucketName`
+ `IamRoleArn`
+ `KmsKeyId`

## 區域和版本可用性
<a name="USER_ExportSnapshot.RegionVersionAvailability"></a>

功能可用性和支援會因每個資料庫引擎的特定版本以及 AWS 區域而有所不同。如需具備將快照匯出至 S3 功能的版本和區域可用性的詳細資訊，請參閱 [將快照匯出至 Amazon RDS 中的 S3 的支援區域和資料庫引擎](Concepts.RDS_Fea_Regions_DB-eng.Feature.ExportSnapshotToS3.md)。

## 限制
<a name="USER_ExportSnapshot.Limits"></a>

將資料庫快照資料匯出至 Amazon S3 時有下列限制：
+ 您無法同時針對相同的資料庫快照執行多個匯出任務。這同時適用於完整和部分匯出。
+ 不支援從使用磁性儲存體的資料庫匯出快照。
+ 匯出至 S3 不支援內含冒號 (:) 的 S3 字首。
+ 在匯出過程中，S3 檔案路徑中的以下字元將轉換為底線 (\$1)：

  ```
  \ ` " (space)
  ```
+ 如果資料庫、結構描述或資料表的名稱中包含下列字元以外的字元，則不支援部分匯出。但是，您可以匯出整個資料庫快照。
  + 拉丁字母 (A–Z)
  + 數字 (0–9)
  + 美元符號 (\$1)
  + 底線 (\$1)
+ 資料庫資料表資料欄名稱不支援空格 ( ) 和某些字元。資料行名稱中具備下列字元的資料表會在匯出時跳過：

  ```
  , ; { } ( ) \n \t = (space)
  ```
+ 匯出時會略過名稱中具備斜線 (/) 的表格。
+ 匯出期間，系統會略過 RDS for PostgreSQL 的暫存和未記錄資料表。
+ 若資料包含接近或超過 500 MB 的大型物件 (例如 BLOB 或 CLOB)，則匯出會失敗。
+ 如果資料表包含接近或大於 2 GB 的大型資料列，則在匯出期間會略過該資料表。
+ 對於部分匯出，`ExportOnly` 清單的大小上限為 200 KB。
+ 強烈建議您對每個匯出任務使用唯一的名稱。如果不使用唯一的任務名稱，可能會收到下列錯誤訊息：

  ExportTaskAlreadyExistsFault：呼叫 StartExportTask 操作時出現錯誤 (ExportTaskAlreadyExists)：ID *xxxxx* 的匯出任務已存在。
+ 您在將快照資料匯出至 S3 時可以刪除該快照，但在匯出任務完成之前，仍會向您收取該快照的儲存費用。
+ 您無法將匯出的快照資料從 S3 還原至新的資料庫執行個體，或將快照資料從 S3 匯入至現有的資料庫執行個體。
+ 每個 最多可以有五個同時進行的資料庫快照匯出任務 AWS 帳戶。
+ 若要將資料庫快照匯出至跨帳戶 Amazon S3 儲存貯體，您必須使用 AWS CLI 或 RDS API。
+ Amazon RDS 完成匯出任務後，可能需要稍待片刻，才能從相同的資料庫快照啟動另一個匯出任務。
+ 您無法匯出檢視或具體化檢視。
+ RDS 匯出至 S3 的作業不支援 GuardDuty Malware Protection for S3 的標籤型存取控制。

# 監控 Amazon RDS 的快照匯出
<a name="USER_ExportSnapshot.Monitoring"></a>

您可以使用 AWS 管理主控台、AWS CLI 或 RDS API 監控資料庫快照匯出。

## 主控台
<a name="USER_ExportSnapshot.MonitorConsole"></a>

**監控資料庫快照匯出**

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

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 如要檢視快照匯出清單，請選擇 **Exports in Amazon S3 (Amazon S3 中的匯出)** 標籤。

1. 如要檢視特定快照匯出的相關資訊，請選擇匯出任務。

## AWS CLI
<a name="USER_ExportSnapshot.MonitorCLI"></a>

如要使用 AWS CLI 監控資料庫快照匯出，請使用 [describe-export-tasks](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-export-tasks.html) 命令。

以下範例示範如何顯示您所有快照匯出的目前資訊。

**Example**  

```
 1. aws rds describe-export-tasks
 2. 
 3. {
 4.     "ExportTasks": [
 5.         {
 6.             "Status": "CANCELED",
 7.             "TaskEndTime": "2019-11-01T17:36:46.961Z",
 8.             "S3Prefix": "something",
 9.             "ExportTime": "2019-10-24T20:23:48.364Z",
10.             "S3Bucket": "amzn-s3-demo-bucket",
11.             "PercentProgress": 0,
12.             "KmsKeyId": "arn:aws:kms:AWS_Region:123456789012:key/K7MDENG/bPxRfiCYEXAMPLEKEY",
13.             "ExportTaskIdentifier": "anewtest",
14.             "IamRoleArn": "arn:aws:iam::123456789012:role/export-to-s3",
15.             "TotalExtractedDataInGB": 0,
16.             "TaskStartTime": "2019-10-25T19:10:58.885Z",
17.             "SourceArn": "arn:aws:rds:AWS_Region:123456789012:snapshot:parameter-groups-test"
18.         },
19. {
20.             "Status": "COMPLETE",
21.             "TaskEndTime": "2019-10-31T21:37:28.312Z",
22.             "WarningMessage": "{\"skippedTables\":[],\"skippedObjectives\":[],\"general\":[{\"reason\":\"FAILED_TO_EXTRACT_TABLES_LIST_FOR_DATABASE\"}]}",
23.             "S3Prefix": "",
24.             "ExportTime": "2019-10-31T06:44:53.452Z",
25.             "S3Bucket": "amzn-s3-demo-bucket1",
26.             "PercentProgress": 100,
27.             "KmsKeyId": "arn:aws:kms:AWS_Region:123456789012:key/2Zp9Utk/h3yCo8nvbEXAMPLEKEY",
28.             "ExportTaskIdentifier": "thursday-events-test", 
29.             "IamRoleArn": "arn:aws:iam::123456789012:role/export-to-s3",
30.             "TotalExtractedDataInGB": 263,
31.             "TaskStartTime": "2019-10-31T20:58:06.998Z",
32.             "SourceArn": "arn:aws:rds:AWS_Region:123456789012:snapshot:rds:example-1-2019-10-31-06-44"
33.         },
34.         {
35.             "Status": "FAILED",
36.             "TaskEndTime": "2019-10-31T02:12:36.409Z",
37.             "FailureCause": "The S3 bucket edgcuc-export isn't located in the current AWS Region. Please, review your S3 bucket name and retry the export.",
38.             "S3Prefix": "",
39.             "ExportTime": "2019-10-30T06:45:04.526Z",
40.             "S3Bucket": "amzn-s3-demo-bucket2",
41.             "PercentProgress": 0,
42.             "KmsKeyId": "arn:aws:kms:AWS_Region:123456789012:key/2Zp9Utk/h3yCo8nvbEXAMPLEKEY",
43.             "ExportTaskIdentifier": "wednesday-afternoon-test",
44.             "IamRoleArn": "arn:aws:iam::123456789012:role/export-to-s3",
45.             "TotalExtractedDataInGB": 0,
46.             "TaskStartTime": "2019-10-30T22:43:40.034Z",
47.             "SourceArn": "arn:aws:rds:AWS_Region:123456789012:snapshot:rds:example-1-2019-10-30-06-45"
48.         }
49.     ]
50. }
```
如要顯示特定快照匯出的相關資訊，請在 `--export-task-identifier` 命令中包含 `describe-export-tasks` 選項。如要篩選輸出，請包含 `--Filters` 選項。如需更多選項，請參閱 [describe-export-tasks](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-export-tasks.html) 命令。

## RDS API
<a name="USER_ExportSnapshot.MonitorAPI"></a>

如要使用 Amazon RDS API 顯示資料庫快照匯出的相關資訊，請使用 [DescribeExportTasks](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeExportTasks.html) 操作。

若要追蹤匯出工作流程的完成或起始其他工作流程，您可以訂閱 Amazon Simple Notification Service 主題。如需 Amazon SNS 的詳細資訊，請參閱[使用 Amazon RDS 事件通知](USER_Events.md)。

# 取消 Amazon RDS 的快照匯出任務
<a name="USER_ExportSnapshot.Canceling"></a>

您可以使用 AWS 管理主控台、AWS CLI 或 RDS API 取消資料庫快照匯出任務。

**注意**  
取消快照匯出任務不會移除任何已匯出到 Amazon S3 的資料。如需如何使用主控台刪除資料的資訊，請參閱[如何從 S3 儲存貯體刪除物件？](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/delete-objects.html) 如要使用 CLI 刪除資料，請使用 [delete-object](https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-object.html) 命令。

## 主控台
<a name="USER_ExportSnapshot.CancelConsole"></a>

**取消快照匯出任務**

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

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 選擇 **Exports in Amazon S3 (Amazon S3 中的匯出)** 標籤。

1. 選擇您希望取消的快照匯出任務。

1. 選擇 **Cancel (取消)**。

1. 選擇確認頁面上的 **Cancel export task (取消匯出任務)**。

 

## AWS CLI
<a name="USER_ExportSnapshot.CancelCLI"></a>

如要使用 AWS CLI 取消快照匯出任務，請使用 [cancel-export-task](https://docs.aws.amazon.com/cli/latest/reference/rds/cancel-export-task.html) 命令。命令需要 `--export-task-identifier` 選項。

**Example**  

```
 1. aws rds cancel-export-task --export-task-identifier my_export
 2. {
 3.     "Status": "CANCELING", 
 4.     "S3Prefix": "", 
 5.     "ExportTime": "2019-08-12T01:23:53.109Z", 
 6.     "S3Bucket": "amzn-s3-demo-bucket", 
 7.     "PercentProgress": 0, 
 8.     "KmsKeyId": "arn:aws:kms:AWS_Region:123456789012:key/K7MDENG/bPxRfiCYEXAMPLEKEY", 
 9.     "ExportTaskIdentifier": "my_export", 
10.     "IamRoleArn": "arn:aws:iam::123456789012:role/export-to-s3", 
11.     "TotalExtractedDataInGB": 0, 
12.     "TaskStartTime": "2019-11-13T19:46:00.173Z", 
13.     "SourceArn": "arn:aws:rds:AWS_Region:123456789012:snapshot:export-example-1"
14. }
```

## RDS API
<a name="USER_ExportSnapshot.CancelAPI"></a>

如要使用 Amazon RDS API 取消快照匯出任務，請搭配 `ExportTaskIdentifier` 參數使用 [CancelExportTask](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CancelExportTask.html) 操作。

# Amazon RDS 的 Amazon S3 匯出任務失敗訊息
<a name="USER_ExportSnapshot.failure-msg"></a>

下表說明 Amazon S3 匯出任務失敗時傳回的訊息。


| 失敗訊息 | 描述 | 
| --- | --- | 
| 發生未知的內部錯誤。 |  因為不明的錯誤、例外或故障，所以任務失敗。  | 
| 將匯出任務的中繼資料寫入 S3 儲存貯體 [儲存貯體名稱] 時發生未知的內部錯誤。 |  因為不明的錯誤、例外或故障，所以任務失敗。  | 
| RDS 匯出無法寫入匯出任務的中繼資料，因為無法擔任 IAM 角色 [角色 ARN]。 |  匯出任務會擔任您的 IAM 角色，以驗證是否允許將中繼資料寫入 S3 儲存貯體。如果任務無法擔任您的 IAM 角色，則會失敗。  | 
| RDS 匯出無法使用具有 KMS 金鑰 [金鑰 ID] 的 IAM 角色 [角色 ARN]，將匯出任務的中繼資料寫入 S3 儲存貯體 [儲存貯體名稱]。錯誤代碼：[錯誤代碼] |  缺少一或多個許可，因此匯出任務無法存取 S3 儲存貯體。收到下列其中一個錯誤碼時會引發此失敗訊息： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/USER_ExportSnapshot.failure-msg.html) 這些錯誤碼表示 IAM 角色、S3 儲存貯體或 KMS 金鑰的設定錯誤。  | 
| IAM 角色 [角色 ARN] 未獲得授權在 S3 儲存貯體 [儲存貯體名稱] 上呼叫 [S3 動作]。檢閱您的許可，然後重試匯出。 |  IAM 政策設定錯誤。缺少 S3 儲存貯體上特定 S3 動作的許可，這會導致匯出任務失敗。  | 
| KMS 金鑰檢查失敗。請檢查 KMS 金鑰上的憑證，然後再試一次。 | KMS 金鑰憑證檢查失敗。 | 
| S3 憑證檢查失敗。檢查您的 S3 儲存貯體與 IAM 政策的許可。 | S3 憑證檢查失敗。 | 
| S3 儲存貯體 [儲存貯體名稱] 無效。可能不是位於目前的 AWS 區域或不存在。檢閱您的 S3 儲存貯體名稱並重試匯出。 | S3 儲存貯體無效。 | 
| S3 儲存貯體 [儲存貯體名稱] 並非位於目前 AWS 區域。檢閱您的 S3 儲存貯體名稱並重試匯出。 | S3 儲存貯體位於錯誤 AWS 區域。 | 

# 對 RDS for PostgreSQL 許可錯誤進行疑難排解
<a name="USER_ExportSnapshot.postgres-permissions"></a>

將 PostgreSQL 資料庫匯出至 Amazon S3 時，您可能會看到 `PERMISSIONS_DO_NOT_EXIST` 錯誤，指出某些資料表已略過。之所以發生此錯誤，通常是因為您在建立資料庫時指定的超級使用者沒有存取這些資料表的許可。

若要修正此錯誤，請執行下列命令：

```
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA schema_name TO superuser_name
```

如需超級使用者權限的詳細資訊，請參閱[主要使用者帳戶權限](UsingWithRDS.MasterAccounts.md)。

# 匯出至 Amazon S3 for Amazon RDS 的檔案命名慣例
<a name="USER_ExportSnapshot.FileNames"></a>

特定表格的匯出資料會以 `base_prefix/files` 的格式儲存，其中基本前綴如下：

```
export_identifier/database_name/schema_name.table_name/
```

例如：

```
export-1234567890123-459/rdststdb/rdststdb.DataInsert_7ADB5D19965123A2/
```

檔案命名方式有兩種慣例：
+ 目前慣例：

  ```
  batch_index/part-partition_index-random_uuid.format-based_extension
  ```

  批次索引是序號，代表從資料表讀取的資料批次。如果我們無法將您的資料表分割成要平行匯出的小型區塊，將會有多個批次索引。如果您的資料表分割為多個資料表，則會發生相同的情況。此時會有多個批次索引，一個用於主資料表的每個資料表分割區。

  如果我們可以將您的資料表分割成要平行讀取的小區塊，則只會有批次索引 `1` 資料夾。

  在批次索引資料夾中，有一或多個 Parquet 檔案包含資料表的資料。Parquet 檔案名稱的字首為 `part-partition_index`。如果您的資料表已分割，則會有多個以分割區索引 `00000` 開頭的檔案。

  分割區索引序列中可能會有間隙。這是因為每個分割區是從資料表中的範圍查詢取得。如果該分割區的範圍內沒有資料，則會略過該序號。

  例如，假設 `id` 欄是資料表的主索引鍵，且其最小值和最大值為 `100` 和 `1000`。當我們嘗試使用九個分割區匯出此資料表時，我們會使用平行查詢來讀取它，如下所示：

  ```
  SELECT * FROM table WHERE id <= 100 AND id < 200
  SELECT * FROM table WHERE id <= 200 AND id < 300
  ```

  這應該會產生從 `part-00000-random_uuid.gz.parquet` 到 `part-00008-random_uuid.gz.parquet` 的九個檔案。不過，如果沒有 ID 介於 `200` 和 `350` 之間的資料列，則其中一個已完成的分割區是空的，而且不會為其建立檔案。在上一個範例中，`part-00001-random_uuid.gz.parquet` 不會建立。
+ 較舊的慣例：

  ```
  part-partition_index-random_uuid.format-based_extension
  ```

  這與目前的慣例相同，但沒有 `batch_index` 字首，例如：

  ```
  part-00000-c5a881bb-58ff-4ee6-1111-b41ecff340a3-c000.gz.parquet
  part-00001-d7a881cc-88cc-5ab7-2222-c41ecab340a4-c000.gz.parquet
  part-00002-f5a991ab-59aa-7fa6-3333-d41eccd340a7-c000.gz.parquet
  ```

檔案命名慣例可能會有所變更。因此，在讀取目標資料表時，建議您讀取資料表基本字首內的所有內容。

# Amazon RDS 匯出至 Amazon S3 儲存貯體時的資料轉換
<a name="USER_ExportSnapshot.data-types"></a>

當您將資料庫快照匯出至 Amazon S3 儲存貯體時，Amazon RDS 會以 Parquet 格式轉換資料、匯出資料，以及存放資料。如需 Parquet 的詳細資訊，請參閱 [Apache Parquet](https://parquet.apache.org/docs/) 網站。

Parquet 會將所有資料以下列其中一種基本類型存放：
+ BOOLEAN
+ INT32
+ INT64
+ INT96
+ FLOAT
+ DOUBLE
+ BYTE\$1ARRAY – 長度可變的位元組陣列，也稱為二進位
+ FIXED\$1LEN\$1BYTE\$1ARRAY – 長度固定的位元組陣列，用於值具備固定大小時

Parquet 的資料類型相當少，可減少讀取和寫入格式的複雜性。Parquet 提供擴充基本類型的邏輯類型。「邏輯類型」**會實作為標註，並將資料存放在 `LogicalType` 中繼資料欄位中。邏輯類型標註會說明如何解譯基本類型。

當 `STRING` 邏輯類型標註 `BYTE_ARRAY` 類型時，會指出位元組陣列應解譯為 UTF-8 編碼的字元字串。在匯出任務完成後，Amazon RDS 會通知您是否發生任何字串轉換。匯出的基礎資料一律與來源資料相同。但是，由於 UTF-8 中的編碼存在差異，在 Athena 等工具中讀取時，有些字元的顯示方式可能會和來源中的顯示方式不同。

如需詳細資訊，請參閱 Parquet 文件中的 [Parquet Logical Type Definitions](https://github.com/apache/parquet-format/blob/master/LogicalTypes.md)。

**Topics**
+ [MySQL 和 MariaDB 資料類型對 Parquet 的映射](#USER_ExportSnapshot.data-types.MySQL)
+ [PostgreSQL 資料類型對 Parquet 的映射](#USER_ExportSnapshot.data-types.PostgreSQL)

## MySQL 和 MariaDB 資料類型對 Parquet 的映射
<a name="USER_ExportSnapshot.data-types.MySQL"></a>

下表顯示轉換資料並匯出至 Amazon S3 時，MySQL 和 MariaDB 資料類型到 Parquet 資料類型的映射。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/USER_ExportSnapshot.data-types.html)

## PostgreSQL 資料類型對 Parquet 的映射
<a name="USER_ExportSnapshot.data-types.PostgreSQL"></a>

下表顯示轉換資料並匯出至 Amazon S3 時，PostgreSQL 資料類型到 Parquet 資料類型的映射。


| PostgreSQL 資料類型 | Parquet 基本類型 | 邏輯類型標註 | 映射備註 | 
| --- | --- | --- | --- | 
| 數值資料類型 | 
| BIGINT | INT64 |  |   | 
| BIGSERIAL | INT64 |  |   | 
| DECIMAL | BYTE\$1ARRAY | STRING | DECIMAL 類型會轉換成 BYTE\$1ARRAY 類型中的字串，並以 UTF8 編碼。此轉換是為了避免因非數字 (NaN) 而導致的資料精確度和資料值複雜性。 | 
| DOUBLE PRECISION | DOUBLE |  |   | 
| INTEGER | INT32 |  |   | 
| MONEY | BYTE\$1ARRAY | STRING |   | 
| REAL | FLOAT |  |   | 
| SERIAL | INT32 |  |   | 
| SMALLINT | INT32 | INT(16, true) |   | 
| SMALLSERIAL | INT32 | INT(16, true) |   | 
| 字串和相關資料類型 | 
| ARRAY | BYTE\$1ARRAY | STRING |  陣列會轉換成字串，並以 BINARY (UTF8) 編碼。 此轉換是為了避免因非數字 (NaN) 和時間資料值而導致的資料精確度複雜性。  | 
| BIT | BYTE\$1ARRAY | STRING |   | 
| BIT VARYING | BYTE\$1ARRAY | STRING |   | 
| BYTEA | BINARY |  |   | 
| CHAR | BYTE\$1ARRAY | STRING |   | 
| CHAR(N) | BYTE\$1ARRAY | STRING |   | 
| ENUM | BYTE\$1ARRAY | STRING |   | 
| NAME | BYTE\$1ARRAY | STRING |   | 
| TEXT | BYTE\$1ARRAY | STRING |   | 
| TEXT SEARCH | BYTE\$1ARRAY | STRING |   | 
| VARCHAR(N) | BYTE\$1ARRAY | STRING |   | 
| XML | BYTE\$1ARRAY | STRING |   | 
| 日期和時間資料類型 | 
| DATE | BYTE\$1ARRAY | STRING |   | 
| INTERVAL | BYTE\$1ARRAY | STRING |   | 
| TIME | BYTE\$1ARRAY | STRING |  | 
| TIME WITH TIME ZONE | BYTE\$1ARRAY | STRING |  | 
| TIMESTAMP | BYTE\$1ARRAY | STRING |  | 
| TIMESTAMP WITH TIME ZONE | BYTE\$1ARRAY | STRING |  | 
| 幾何資料類型 | 
| BOX | BYTE\$1ARRAY | STRING |   | 
| CIRCLE | BYTE\$1ARRAY | STRING |   | 
| LINE | BYTE\$1ARRAY | STRING |   | 
| LINESEGMENT | BYTE\$1ARRAY | STRING |   | 
| PATH | BYTE\$1ARRAY | STRING |   | 
| POINT | BYTE\$1ARRAY | STRING |   | 
| POLYGON | BYTE\$1ARRAY | STRING |   | 
| JSON 資料類型 | 
| JSON | BYTE\$1ARRAY | STRING |   | 
| JSONB | BYTE\$1ARRAY | STRING |   | 
| 其他資料類型 | 
| BOOLEAN | BOOLEAN |  |   | 
| CIDR | BYTE\$1ARRAY | STRING |  網路資料類型 | 
| COMPOSITE | BYTE\$1ARRAY | STRING |   | 
| DOMAIN | BYTE\$1ARRAY | STRING |   | 
| INET | BYTE\$1ARRAY | STRING |  網路資料類型 | 
| MACADDR | BYTE\$1ARRAY | STRING |   | 
| OBJECT IDENTIFIER | N/A |  |  | 
| PG\$1LSN | BYTE\$1ARRAY | STRING |   | 
| RANGE | BYTE\$1ARRAY | STRING |   | 
| UUID | BYTE\$1ARRAY | STRING |   | 

# 使用 AWS Backup 來管理 Amazon RDS 的自動備份
<a name="AutomatedBackups.AWSBackup"></a>

AWS Backup 是一項全受管的備份服務，可輕鬆在雲端和內部部署環境內集中管理各 AWS 服務間的資料備份，並予以自動化。您可以在 AWS Backup 中管理 Amazon RDS 資料庫的備份。

**注意**  
由 AWS Backup 管理的備份視為手動資料庫快照，但不計入 RDS 的資料庫快照配額。以 AWS Backup 建立之備份的名稱結尾為 `awsbackup:backup-job-number`。

如需 AWS Backup[ 的詳細資訊，請參閱《*AWS Backup* 開發人員指南](https://docs.aws.amazon.com/aws-backup/latest/devguide)》。

**若要檢視 AWS Backup 管理的備份**

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

1. 在導覽窗格中，選擇 **Snapshots** (快照)。

1. 選擇 **Backup service** (備份服務) 標籤。

   您的 AWS Backup 備份會列在 **Backup service snapshots** (備份服務快照)。