從備份中還原 DynamoDB 資料表 - Amazon DynamoDB

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

從備份中還原 DynamoDB 資料表

本節說明如何使用 Amazon DynamoDB 主控台或 AWS Command Line Interface (AWS CLI) 從備份還原資料表。

注意

如果您想要使用 AWS CLI,就必須先設定它。如需詳細資訊,請參閱 存取 DynamoDB

從備份中還原資料表 (主控台)

下列程序示範如何使用在「Music」教學中建立的 MusicBackup 檔案還原 備份 DynamoDB 資料表 資料表。

注意

此程序假設在使用 Music 檔案還原資料表前 MusicBackup 資料表已不存在。

從備份還原資料表
  1. 登入 AWS Management Console,並在 https://console.aws.amazon.com/dynamodb/ 開啟 DynamoDB 主控台。

  2. 在主控台左側的導覽窗格中,選擇 Backups (備份)。

  3. 在備份清單中,選擇 MusicBackup

    備份清單和建立備份按鈕的螢幕擷取畫面。
  4. 選擇 Restore (還原)。

  5. 輸入 Music 做為新資料表的名稱。確認備份名稱和其他備份詳細資訊。然後選擇 Restore table (還原資料表) 啟動還原程序。

    注意

    您可以將資料表還原至相同的 AWS 區域,或還原至不同於備份所在的區域。您可以阻止在新還原的資料表上建立次要索引。此外,您可以指定不同的加密模式。

    從備份還原的資料表一律使用 DynamoDB 標準資料表類別建立。

    具有備份資料表詳細資訊之從備份還原資料表畫面的螢幕擷取畫面。

    正在還原的資料表會顯示為 Creating (正在建立) 狀態。還原程序完成後,Music 資料表的狀態會變更為 Active (作用中)。

從備份中還原資料表 (AWS CLI)

遵循這些步驟透過 AWS CLI 使用在「備份 DynamoDB 資料表」教學中建立的 MusicBackup 還原 Music 資料表。

從備份還原資料表
  1. 使用 list-backups 命令確認您想要還原的備份。此範例使用 MusicBackup

    aws dynamodb list-backups

    如需備份的其他詳細資訊,請使用 describe-backup 命令。您可以從上一步取得輸入 backup-arn

    aws dynamodb describe-backup \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01489173575360-b308cd7d
  2. 從備份還原資料表。在本例中,MusicBackup 會將 Music 資料表還原至相同的 AWS 區域。

    aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01489173575360-b308cd7d
  3. 利用自訂的資料表設定,從儲存貯體還原資料表。在本例中,MusicBackup 會還原 Music 資料表並指定還原資料表的加密模式。

    注意

    sse-specification-override 參數採用的數值與 CreateTable 命令中使用的 sse-specification-override 參數相同。如需進一步了解,請參閱 在 DynamoDB 中管理加密資料表

    aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01581080476474-e177ebe2 \ --sse-specification-override Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234

    您可以將資料表還原到不同於備份所在的 AWS 區域。

    注意
    • 執行跨區域還原必須使用 sse-specification-override 參數,而還原至與來源資料表相同的區域時則可選用此參數。

    • 從命令列執行跨區域還原時,必須將預設 AWS 區域設定為所需的目的地區域。如需進一步了解,請參閱《AWS Command Line Interface 使用者指南》中的命令列選項

    aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01581080476474-e177ebe2 \ --sse-specification-override Enabled=true,SSEType=KMS

    您可以覆寫帳單模式及佈建給還原資料表的輸送量。

    aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01489173575360-b308cd7d \ --billing-mode-override PAY_PER_REQUEST

    您可以阻止在還原的資料表上建立部分或全部次要索引。

    注意

    如果您阻止在還原的資料表上建立部分或全部次要索引,可加速還原且更符合經濟效益。

    aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01581081403719-db9c1f91 \ --global-secondary-index-override '[]' \ --sse-specification-override Enabled=true,SSEType=KMS
    注意

    提供的次要索引應該符合現有索引。您無法在還原時建立新索引。

    您可以使用不同覆寫的組合。例如,您可以使用單一全域次要索引,同時變更所佈建的輸送量,如下所示。

    aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:eu-west-1:123456789012:table/Music/backup/01581082594992-303b6239 \ --billing-mode-override PROVISIONED \ --provisioned-throughput-override ReadCapacityUnits=100,WriteCapacityUnits=100 \ --global-secondary-index-override IndexName=singers-index,KeySchema=["{AttributeName=SingerName,KeyType=HASH}"],Projection="{ProjectionType=KEYS_ONLY}",ProvisionedThroughput="{ReadCapacityUnits=5,WriteCapacityUnits=5}" \ --sse-specification-override Enabled=true,SSEType=KMS

若要確認還原,請使用 describe-table 命令描述 Music 資料表。

aws dynamodb describe-table --table-name Music

正在從備份還原的資料表會顯示為 Creating (正在建立) 狀態。還原程序完成後,Music 資料表的狀態會變更為 Active (作用中)。

重要

當還原正在進行時,請勿修改或刪除 IAM 角色政策,否則可能會造成非預期的行為。例如,假設您在資料表還原時移除資料表的寫入許可。在此案例中,基礎 RestoreTableFromBackup 操作會無法將任何還原的資料寫入資料表。

還原操作完成後,您就可以修改或刪除 IAM 角色政策。

涉及存取目標還原資料表的來源 IP 限制的 IAM 政策,應該將 aws:ViaAWSService 金鑰設定為 false,以此確保限制僅適用於委託人直接提出的請求。否則,還原將被取消。

如果您的備份使用 AWS 受管金鑰 或客戶受管金鑰加密,請勿在還原進行期間停用或刪除金鑰,否則還原將會失敗。

還原操作完成後,您可以變更還原資料表的加密金鑰,並停用或刪除舊的金鑰。