

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

# Amazon Aurora DSQL 還原
<a name="restore-auroradsql"></a>

**Topics**
+ [概觀](#restore-auroradsql-overview)
+ [還原 Aurora DSQL 單一區域叢集](#restore-auroradsql-singleregion)
+ [還原 Aurora DSQL 多區域叢集](#restore-auroradsql-multiregion)
+ [故障診斷 Aurora DSQL 還原問題](#restore-auroradsql-troubleshoot)
+ [Aurora DSQL 還原常見問答集](#restore-auroradsql-faq)

## 概觀
<a name="restore-auroradsql-overview"></a>

若要還原 Amazon Aurora DSQL 單一區域叢集，請使用 AWS Backup 主控台或 CLI 選取要還原的復原點 （備份）。若要還原 Aurora DSQL 多區域叢集，您現在可以使用 AWS Backup 主控台或 CLI。

對於單一區域還原，請包含名稱、叢集加密和刪除保護，然後啟動還原至新建立的叢集。

對於多區域還原，您將需要指定其他參數 （包括見證區域、對等區域） 和區域組態設定。多區域還原會建立跨越多個 的叢集 AWS 區域，提供增強的可用性和災難復原功能。

## 還原 Aurora DSQL 單一區域叢集
<a name="restore-auroradsql-singleregion"></a>

您可以使用 AWS Backup 主控台或 ，將 Aurora DSQL 叢集還原至單一區域 AWS CLI。

------
#### [ Console ]

****

1. 在 https：//[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 開啟 AWS Backup 主控台。

1. 選取您要還原之復原點旁的「還原」按鈕。

1. 設定要還原復原點的新叢集設定。

   1. 根據預設，AMK (AWS 受管金鑰） 將用於加密還原的資料。您也可以指定不同的金鑰。

   1. 預設會啟用 Aurora 叢集的[刪除保護](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_DeleteCluster.html#USER_DeletionProtection)，但取消選取方塊以關閉選項。

1. 檢閱設定；當這些設定令人滿意時，請選取**還原備份**按鈕。

AWS Backup 將建立新的 Aurora DSQL 叢集。

------
#### [ AWS CLI ]

**單一區域還原**

1. 使用 CLI 命令`aws backup start-restore-job`從指定的復原點還原 Aurora 叢集。

1. 包含還原任務的必要中繼資料。範例：  
**Example**  

   ```
   aws backup start-restore-job \
       --recovery-point-arn "arn:aws:dsql:us-east-1:123456789012:cluster/example-cluster/backup/example-backup" \
       --iam-role-arn "arn:aws:iam::123456789012:role/service-role/AWSBackupDefaultServiceRole" \
       --metadata '{"regionalConfig":"[{\"region\":\"us-east-1\",\"isDeletionProtectionEnabled\":true,\"kmsKeyId\":\"my_key\"}]"}' \
       --copy-source-tags-to-restored-resource
   ```

------

## 還原 Aurora DSQL 多區域叢集
<a name="restore-auroradsql-multiregion"></a>

Aurora DSQL 多區域叢集還原發生在關閉的區域三元組內，這是三個 AWS 區域 對等的群組。多區域還原需要您在 操作中指定的區域包含在一個三元組內。如需多區域叢集的詳細資訊，請參閱[設定多區域叢集](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/configuring-multi-region-clusters.html)。

支援來自下列群組的三元組。如果超過 個區域，請在相同群組中選擇三個區域。
+ 美國東部 （維吉尼亞北部）、美國東部 （俄亥俄）、美國西部 （加利佛尼亞北部）
+ 歐洲 （愛爾蘭）、歐洲 （倫敦）、歐洲 （巴黎）、歐洲 （法蘭克福）
+ 亞太區域 （東京）、亞太區域 （首爾）、亞太區域 （大阪）

若要完成多區域還原，請確定您具有下列許可：
+ `backup:StartRestoreJob`
+ `dsql:UpdateCluster`
+ `dsql:AddPeerCluster`
+ `dsql:RemovePeerCluster`

您可以使用 AWS Backup 主控台或 CLI 命令，將 Aurora DSQL 叢集的備份還原至多個區域。

**提示**  
如果您有具有自動建立跨區域複本至其中一個指定區域的規則的備份計劃，則建立的複本可用於此多區域還原。

多區域還原會從您目前的區域開始。您也需要：
+ 具有您目前區域中復原點相同跨區域副本的對等區域
+ 見證區域，透過支援僅限交易日誌的寫入 AWS 區域 來參與多區域叢集組態，而不會耗用實際資料的儲存體。如需見證區域的詳細資訊，請參閱[建立多區域叢集](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/getting-started.html#getting-started-multi-region)。

個別步驟如下所示：

------
#### [ Console ]

 AWS Backup 主控台現在支援 Aurora DSQL 叢集的多區域還原，提供建立跨越多個區域的叢集的簡化程序。如需多區域叢集的詳細資訊，請參閱[設定多區域叢集](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/configuring-multi-region-clusters.html)。

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

1. 在導覽窗格中，選擇 **Backup vaults (備份文件庫)**。

1. 選擇包含您要還原之 Aurora DSQL 復原點的備份保存庫。

1. 選取您要還原的復原點，然後選擇**還原**。

1. 在還原頁面的**還原選項**下，選取**新增對等區域**以啟用多區域還原。

1. 從下拉式功能表中選取**對等叢集區域**。此區域必須與目前 區域位於相同的三元組內，也必須包含目前 （第一個） 區域中復原點的跨區域副本。

1. 從下拉式選單中選取**見證區域**。此區域也必須位於相同的三元組內。

1. 設定主要和對等區域叢集的**叢集設定**：

   1. 對於主要叢集，請設定：
      + **叢集加密** （選用）：選取用於加密的 KMS 金鑰。
      + **刪除保護**：啟用或停用刪除保護。

   1. 針對對等區域叢集，設定：
      + **對等區域叢集加密** （選用）：選取用於加密的 KMS 金鑰。
      + **對等區域叢集刪除保護**：啟用或停用刪除保護。

1. 檢閱您的設定，然後選擇**還原備份**。

1. 主控台會啟動多區域還原程序，在兩個區域中建立叢集，並自動將這些叢集連結在一起。

------
#### [ AWS CLI ]

現在可以使用新的協同運作還原中繼資料搭配 CLI AWS Backup 命令來達成多區域還原。這種方法會自動處理叢集連結，簡化程序。如需以程式設計方式建立多區域叢集的詳細資訊，請參閱《Aurora DSQL 使用者指南》中的[設定多區域叢集](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/configuring-multi-region-clusters.html)。

**重要**  
主要叢集和對等叢集都必須位於相同群組內的區域。如果叢集位於 群組以外的區域，則操作會失敗。支援的群組包括：  
美國東部 （維吉尼亞北部）、美國東部 （俄亥俄）、美國西部 （加利佛尼亞北部）
歐洲 （愛爾蘭）、歐洲 （倫敦）、歐洲 （巴黎）、歐洲 （法蘭克福）
亞太區域 （東京）、亞太區域 （首爾）、亞太區域 （大阪）

**透過 AWS CLI 使用協調還原中繼資料進行多區域還原**

1. 使用`aws backup start-restore-job`具有新多區域協同運作中繼資料的 CLI 命令建立還原任務：  
**Example**  

   ```
   aws backup start-restore-job \
   --recovery-point-arn "arn:aws:backup:us-east-1:123456789012:recovery-point:abcd1234" \
   --iam-role-arn "arn:aws:iam::123456789012:role/service-role/AWSBackupDefaultServiceRole" \
   --metadata '{
       "witnessRegion":"us-west-1",
       "useMultiRegionOrchestration":"true",
       "peerRegion":"[\"us-east-2\"]",
       "regionalConfig":"[{\"region\":\"us-east-1\",\"isDeletionProtectionEnabled\":true,\"kmsKeyId\":\"arn:aws:kms:us-east-1:123456789012:key/ba4b3773-4bb8-4a7a-994c-46ede70202f5\"},{\"region\":\"us-west-2\",\"isDeletionProtectionEnabled\":true,\"kmsKeyId\":\"arn:aws:kms:us-west-2:123456789012:key/ba4b3773-4bb8-4a7a-994c-46ede70202f5\"}]"
   }' \
   --copy-source-tags-to-restored-resource
   ```

   中繼資料結構包括：
   + `witnessRegion`：將做為多區域叢集見證的區域。如需詳細資訊，請參閱 [Amazon Aurora DSQL 中的彈性](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/disaster-recovery-resiliency.html)。
   + `useMultiRegionOrchestration`：設定為 `true`以啟用多區域協調。
   + `peerRegion`：包含多區域叢集中具有對等叢集的 （區域） 的陣列。如需詳細資訊，請參閱 Aurora DSQL API 參考中的 [MultiRegionProperties](https://docs.aws.amazon.com/aurora-dsql/latest/APIReference/API_MultiRegionProperties.html)。
   + `regionalConfig`：包含每個區域組態的陣列：
     + `region`： AWS 區域 識別符。
     + `isDeletionProtectionEnabled`：布林值旗標以啟用/停用刪除保護。如需詳細資訊，請參閱 Aurora DSQL API 參考中的 [CreateCluster](https://docs.aws.amazon.com/aurora-dsql/latest/APIReference/API_CreateCluster.html#API_CreateCluster_RequestSyntax)。
     + `kmsKeyId`：用於加密的 KMS 金鑰 ARN （選用）。

     如果未指定`regionalConfig`屬性，則會套用預設值：預設加密和 `isDeletionProtectionEnabled` = `TRUE`。

1. 使用 `aws backup describe-restore-job`命令監控還原任務狀態：

   ```
   aws backup describe-restore-job --restore-job-id job-12345678
   ```

1. 還原任務完成後，您可以使用 Aurora DSQL CLI 驗證多區域叢集組態：

   ```
   aws dsql describe-cluster --cluster-identifier your-cluster-id
   ```

   如需多區域叢集操作的詳細資訊，請參閱 Aurora DSQL API 參考中的 [UpdateCluster](https://docs.aws.amazon.com/aurora-dsql/latest/APIReference/API_UpdateCluster.html)。

------

## 故障診斷 Aurora DSQL 還原問題
<a name="restore-auroradsql-troubleshoot"></a>

**錯誤：**許可不足

**可能原因：**如果您嘗試將 Aurora DSQL 復原點複製到從未與 DSQL API 互動的帳戶 （跨帳戶複本），您可能會收到許可問題錯誤，因為目的地帳戶中未設定 DSQL 服務連結角色。

**Remedy：**將包含 DSQL 服務連結角色 [AuroraDsqlServiceLinkedRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/             AuroraDsqlServiceLinkedRolePolicy.html) 的 DSQL [受管政策](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/working-with-service-linked-roles.html)連接至目的地帳戶中的角色。

如果您在備份或還原程序中遇到任何其他問題，您可以在 AWS Backup 主控台或使用 檢查備份和還原任務的狀態 AWS CLI。此外，您可以檢閱 AWS CloudTrail 日誌是否有任何相關的錯誤訊息或與 AWS Backup 操作相關的事件。

## Aurora DSQL 還原常見問答集
<a name="restore-auroradsql-faq"></a>

1. *「我是否可以從 Aurora DSQL 主控台將 AWS Backup 用於 Aurora DSQL？」*

   否，您只能從 AWS Backup 主控台、 SDK 或 CLI 執行備份和還原，以及管理備份。

   

1. *「Aurora DSQL 可用的備份精細程度為何？ 我可以在叢集中備份特定資料表或資料庫嗎？*

   您只能備份和還原整個 Aurora DSQL 叢集。

   

1. *「是 Aurora DSQL 完整備份還是增量備份的備份？」*

   Aurora DSQL 叢集 （備份） 的復原點是叢集的完整備份。

   

1. *「我可以為 Aurora DSQL 多區域叢集建立備份嗎？」*

   是，您可以使用與在單一區域中建立單一叢集備份時相同的步驟，在 中的多區域叢集中為每個叢集建立備份。

    AWS Backup 建議您在計劃還原多區域叢集的其他區域中建立備份的跨區域複本，因為多區域還原需要相同復原點的相同複本 【此操作中的*相同*表示復原點具有相同的資源名稱和建立時間】。

   

1. *「我的還原叢集是否會覆寫我現有的叢集？」*

   否。當您還原 Aurora DSQL 資料時， 會從快照 AWS Backup 建立新的叢集；還原的叢集不會覆寫來源叢集。

   