本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
本節說明如何使用 Amazon DynamoDB 主控台或 AWS Command Line Interface () 從備份還原資料表AWS CLI。
注意
如果您想要使用 AWS CLI,您必須先進行設定。如需詳細資訊,請參閱存取 DynamoDB。
主題
下列程序示範如何使用在「Music
」教學中建立的 MusicBackup
檔案還原 備份 DynamoDB 資料表 資料表。
注意
此程序假設在使用 Music
檔案還原資料表前 MusicBackup
資料表已不存在。
從備份還原資料表
登入 AWS Management Console 並在 開啟 DynamoDB 主控台https://console.aws.amazon.com/dynamodb/
。 -
在主控台左側的導覽窗格中,選擇 Backups (備份)。
-
在備份清單中,選擇
MusicBackup
。 -
選擇 Restore (還原)。
-
輸入
Music
做為新資料表的名稱。確認備份名稱和其他備份詳細資訊。然後選擇 Restore table (還原資料表) 啟動還原程序。注意
您可以將資料表還原至與備份所在的相同 AWS 區域或不同區域。您可以阻止在新還原的資料表上建立次要索引。此外,您可以指定不同的加密模式。
從備份還原的資料表一律使用 DynamoDB 標準資料表類別建立。
正在還原的資料表會顯示為 Creating (正在建立) 狀態。還原程序完成後,
Music
資料表的狀態會變更為 Active (作用中)。
請依照下列步驟,使用 AWS CLI 來使用備份 DynamoDB 資料表教學課程中建立MusicBackup
的 還原Music
資料表。
從備份還原資料表
-
使用
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
-
從備份還原資料表。在此情況下, 會將
Music
資料表MusicBackup
還原至相同的 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
-
利用自訂的資料表設定,從儲存貯體還原資料表。在本例中,
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 角色政策。
IAM 涉及存取目標還原資料表之來源 IP 限制的政策應該將aws:ViaAWSService
金鑰設定為 ,false
以確保這些限制僅適用於委託人直接提出的請求。否則,還原將被取消。
如果您的備份使用 AWS 受管金鑰 或客戶受管金鑰加密,請勿在還原進行時停用或刪除金鑰,否則還原將會失敗。
還原操作完成後,您可以變更還原資料表的加密金鑰,並停用或刪除舊的金鑰。