我要還原 Amazon Redshift 叢集的快照,且想監控還原的進度。
簡短描述
Amazon Redshift 支援三種類型的快照還原操作:
-
叢集還原: 叢集還原會從快照還原所有資料表、資料庫和中繼資料。快照將還原至與來源叢集相同大小和節點組態的 Amazon Redshift 叢集
-
跨執行個體還原: 跨執行個體還原會將 Amazon Redshift 快照還原至不同大小或執行不同節點類型的叢集。跨執行個體還原的執行方式與叢集還原相同。若要列出叢集所有可能的節點類型和節點數目,請執行下列查詢:
aws redshift describe-node-configuration-options --snapshot-identifier <snapshot-identifier> --region <region> --action-type restore-cluster
-
資料表還原: 資料表還原會將特定資料表和關聯的中繼資料從快照還原到 Amazon Redshift 叢集。如需有關如何檢查資料表還原狀態的資訊,請參閱監控資料表還原。
**重要:**從快照建立的新叢集會繼承與來源叢集相同的安全權限和設定。還原快照後,對來源叢集所做的任何變更都不會轉移到新的 Amazon Redshift 叢集。此外,資料無法在來源叢集與新建立的 Amazon Redshift 叢集之間合併。相同的限制適用於 Amazon Redshift 中的來源資料表和新建立的資料表。
解決方法
監控叢集還原或跨執行個體還原
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本。
使用 AWS 管理主控台、Amazon Redshift 事件或 AWS CLI 來監控叢集還原或跨執行個體還原的進度。
AWS 管理主控台
在 Amazon Redshift 主控台中檢視您的 Amazon Redshift 叢集詳細資訊。當您的 Amazon Redshift 叢集還原進行中時,叢集狀態會設定為修改中。在叢集詳細資訊頁面上,選擇維護與監控標籤。維護與監控標籤會列出確認建立 Amazon Redshift 叢集並完成任何資料傳輸的事件。叢集或跨越執行個體還原操作完成後,叢集狀態將設定為可用。
Amazon Redshift 事件
若要檢查叢集還原的狀態,請檢閱下列事件:
- RESTORE_STARTED - REDSHIFT-EVENT-2008: 此事件在還原程序開始時傳送。
- RESTORE_SUCCEEDED - REDSHIFT-EVENT-3003: 此事件在新叢集建立且叢集可供查詢時傳送。
- DATA_TRANSFER_COMPLETED - REDSHIFT-EVENT-3537: 此事件在資料傳輸完成時傳送。
**注意:**RA3 叢集僅發出 RESTORE_STARTED and RESTORE_SUCCEEDED 事件。由於 RA3 節點類型將資料儲存在 Amazon Redshift 受管儲存中,因此在還原成功後無需傳輸資料。
AWS CLI
使用 DescribeClusters API 來追蹤叢集快照的進度。DescribeClusters API 包含快照詳細資訊,例如快照還原中的大小、傳輸速率、經過的時間以及預估剩餘時間。然後,檢查 RestoreStatus 項目,查看您的快照是否已還原。如需快照指標的詳細資訊,請參閱 RestoreStatus。
若要檢查快照還原的狀態,請執行下列命令:
aws redshift describe-clusters --cluster-identifier <value>
如需詳細資訊,請參閱從快照還原叢集。
監控資料表還原
若要監控資料表還原的進度,請使用 AWS 管理主控台或 AWS CLI。
AWS 管理主控台
啟動資料表還原後,使用 Amazon Redshift 主控台追蹤請求的狀態。叢集詳細資訊頁面上的備份標籤會列出所有還原資料表請求。狀態標籤會顯示請求的目前狀態:SUCCEEDED、FAILED、CANCELED、PENDING 或 IN_PROGRESS。
AWS CLI
若要使用 AWS CLI 監控資料表還原,請使用 describe-table-restore-status 命令。describe-table-restore-status 命令列出使用 RestoreTableFromClusterSnapshot API 發出的一個或多個資料表還原請求的狀態。如果不指定 TableRestoreRequestId 參數的值,DescribeTableRestoreStatus API 會傳回所有資料表還原請求的狀態。請求按日期和時間以遞增順序列出。
若要尋找資料表還原的狀態,請執行下列命令:
aws redshift describe-table-restore-status --cluster-identifier <mycluster>
aws redshift describe-table-restore-status --table-restore-request-id <value>
相關資訊
restore-from-cluster-snapshot