

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

# 複製 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 區域，請修改新的資料庫執行個體，並從上一個步驟新增新的或現有的參數群組。