

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Memulihkan tabel DynamoDB ke titik waktu
<a name="PointInTimeRecovery.Tutorial"></a>

Amazon point-in-time DynamoDB recovery (PITR) menyediakan backup berkelanjutan dari data tabel DynamoDB Anda. Anda dapat memulihkan tabel ke titik waktu menggunakan konsol DynamoDB atau AWS Command Line Interface (AWS CLI). Proses point-in-time pemulihan mengembalikan ke tabel baru.

Jika Anda ingin menggunakan AWS CLI, Anda harus mengkonfigurasinya terlebih dahulu. Untuk informasi selengkapnya, lihat [Mengakses DynamoDB](AccessingDynamoDB.md).

**Topics**
+ [Memulihkan tabel DynamoDB ke suatu titik waktu (konsol)](#restoretabletopointintime_console)
+ [Memulihkan tabel ke titik waktu (AWS CLI)](#restorepointintime_cli)

## Memulihkan tabel DynamoDB ke suatu titik waktu (konsol)
<a name="restoretabletopointintime_console"></a>

Contoh berikut menunjukkan cara menggunakan konsol DynamoDB untuk memulihkan tabel yang ada yang bernama `Music` ke titik waktu tertentu.

**catatan**  
Prosedur ini mengasumsikan bahwa Anda telah mengaktifkan point-in-time pemulihan. **Untuk mengaktifkannya untuk `Music` tabel, pada tab **Cadangan**, di bagian **Point-in-time pemulihan (PITR)**, pilih **Edit** dan kemudian centang kotak di sebelah Aktifkan. point-in-time-recovery**

**Untuk memulihkan tabel ke suatu titik waktu**

1. Masuk ke Konsol Manajemen AWS dan buka konsol DynamoDB di. [https://console.aws.amazon.com/dynamodb/](https://console.aws.amazon.com/dynamodb/)

1. Di panel navigasi di sisi kiri konsol, pilih **Tabel**.

1. Dalam daftar tabel, pilih tabel `Music`.

1. **Pada tab **Backup** `Music` tabel, di bagian **Point-in-time pemulihan (PITR)**, pilih Restore.**

1. Untuk nama tabel baru, masukkan **MusicMinutesAgo**.
**catatan**  
Anda dapat mengembalikan tabel ke AWS Wilayah yang sama atau ke Wilayah yang berbeda dari tempat tabel sumber berada. Anda juga dapat mengecualikan indeks sekunder dari yang dibuat pada tabel yang dipulihkan. Selain itu, Anda dapat menentukan mode enkripsi yang berbeda.

1. Untuk mengonfirmasi waktu yang dapat dipulihkan, atur tanggal dan waktu pemulihan ke **Paling awal**. Kemudian pilih **Pulihkan** untuk memulai proses pemulihan.

   Tabel yang sedang dipulihkan ditampilkan dengan status **Memulihkan**. Setelah proses pemulihan selesai, status tabel `MusicMinutesAgo` berubah menjadi **Aktif**.

## Memulihkan tabel ke titik waktu (AWS CLI)
<a name="restorepointintime_cli"></a>

Prosedur berikut menunjukkan bagaimana menggunakan AWS CLI untuk mengembalikan tabel yang ada bernama `Music` ke titik waktu.

**catatan**  
Prosedur ini mengasumsikan bahwa Anda telah mengaktifkan point-in-time pemulihan. Untuk mengaktifkannya untuk tabel `Music`, jalankan perintah berikut.  

```
aws dynamodb update-continuous-backups \
    --table-name Music \
    --point-in-time-recovery-specification PointInTimeRecoveryEnabled=True
```



**Untuk memulihkan tabel ke suatu titik waktu**

1. Konfirmasikan bahwa point-in-time pemulihan diaktifkan untuk `Music` tabel dengan menggunakan `describe-continuous-backups` perintah.

   ```
   aws dynamodb describe-continuous-backups \
       --table-name Music
   ```

   Pencadangan berkelanjutan (diaktifkan secara otomatis pada pembuatan tabel) dan point-in-time pemulihan diaktifkan.

   ```
   {
       "ContinuousBackupsDescription": {
           "PointInTimeRecoveryDescription": {
               "PointInTimeRecoveryStatus": "ENABLED", 
               "EarliestRestorableDateTime": 1519257118.0, 
               "LatestRestorableDateTime": 1520018653.01
           }, 
           "ContinuousBackupsStatus": "ENABLED"
       }
   }
   ```

1. Memulihkan tabel ke titik waktu. Dalam hal ini, tabel `Music` dipulihkan ke `LatestRestorableDateTime` (\$15 menit lalu) ke Wilayah AWS yang sama.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time
   ```
**catatan**  
 Anda juga dapat memulihkan ke titik waktu tertentu. Untuk melakukannya, jalankan perintah menggunakan argumen `--restore-date-time`, dan tentukan stempel waktu. Anda dapat menentukan titik waktu dalam periode pemulihan yang dikonfigurasi, yang dapat diatur ke nilai apa pun antara 1 dan 35 hari. Sebagai contoh, perintah berikut memulihkan tabel ke `EarliestRestorableDateTime`.  

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicEarliestRestorableDateTime \
       --no-use-latest-restorable-time \
       --restore-date-time 1519257118.0
   ```
 Menentukan argumen `--no-use-latest-restorable-time` bersifat opsional ketika memulihkan ke titik waktu tertentu.

1. Memulihkan tabel ke titik waktu dengan pengaturan tabel kustom. Dalam hal ini, tabel `Music` dipulihkan ke `LatestRestorableDateTime` (\$15 menit lalu).

   Anda dapat menentukan mode enkripsi yang berbeda untuk tabel dipulihkan, sebagai berikut.
**catatan**  
Parameter `sse-specification-override` mengambil nilai yang sama seperti yang digunakan parameter `sse-specification-override` dalam perintah `CreateTable`. Untuk mempelajari selengkapnya, lihat [Mengelola tabel yang dienkripsi di DynamoDB](encryption.tutorial.md).

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time \
       --sse-specification-override Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
   ```

   Anda dapat mengembalikan tabel ke AWS Wilayah yang berbeda dari tempat tabel sumber berada.
**catatan**  
Parameter `sse-specification-override` bersifat wajib untuk pemulihan lintas Wilayah, namun opsional untuk pemulihan ke Wilayah yang sama dengan tabel sumber.
Parameter `source-table-arn` harus disediakan untuk pemulihan lintas-wilayah.
Saat melakukan pemulihan lintas wilayah dari baris perintah, Anda harus mengatur AWS Wilayah default ke wilayah tujuan yang diinginkan. Untuk mempelajari selengkapnya, lihat [Opsi baris perintah](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-options.html) di *Panduan Pengguna AWS Command Line Interface *.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time \
       --sse-specification-override Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
   ```

   Anda dapat menimpa modus penagihan dan throughput yang disediakan untuk tabel yang dipulihkan.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time \
       --billing-mode-override PAY_PER_REQUEST
   ```

   Anda dapat mengecualikan beberapa atau semua indeks sekunder dari yang dibuat pada tabel yang baru dipulihkan.
**catatan**  
Pemulihan dapat lebih cepat dan lebih hemat biaya jika Anda mengecualikan beberapa atau semua indeks sekunder dari pembuatan pada tabel yang baru dipulihkan.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time \
       --global-secondary-index-override '[]'
   ```

   Anda dapat menggunakan kombinasi dari penimpaan yang berbeda. Misalnya, Anda dapat menggunakan satu indeks sekunder global dan mengubah throughput yang disediakan secara bersamaan, sebagai berikut.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --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=50,WriteCapacityUnits=50}" \
       --sse-specification-override Enabled=true,SSEType=KMS \
       --use-latest-restorable-time
   ```

Untuk memverifikasi pemulihan, gunakan perintah `describe-table` untuk menggambarkan tabel `MusicEarliestRestorableDateTime`.

```
aws dynamodb describe-table --table-name MusicEarliestRestorableDateTime
```

Tabel yang sedang dipulihkan ditampilkan dengan status **Membuat** dan pemulihan dalam proses sebagai **true**. Setelah proses pemulihan selesai, status tabel `MusicEarliestRestorableDateTime` berubah menjadi **Aktif**.

**penting**  
Saat pemulihan sedang berlangsung, jangan mengubah atau menghapus kebijakan AWS Identity and Access Management (IAM) yang memberikan izin kepada entitas IAM (misalnya, pengguna, grup, atau peran) untuk melakukan pemulihan. Jika tidak, perilaku tak terduga dapat terjadi. Misalnya, Anda menghapus izin menulis untuk sebuah tabel saat tabel tersebut sedang dipulihkan. Dalam kasus ini, operasi `RestoreTableToPointInTime` yang mendasarinya tidak dapat menulis data apa pun yang dipulihkan ke tabel. Kebijakan IAM yang melibatkan pembatasan IP sumber untuk mengakses tabel pemulihan target juga dapat menyebabkan masalah.  
Anda dapat mengubah atau menghapus izin hanya setelah operasi pemulihan selesai.