

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Restaurer une table à partir d'une sauvegarde à un moment précis dans Amazon Keyspaces
<a name="restoretabletopointintime"></a>

La section suivante explique comment restaurer une table Amazon Keyspaces existante à un moment précis. 

**Note**  
Cette procédure suppose que la table que vous utilisez a été configurée avec la fonction point-in-time de restauration. Pour activer le PITR pour une table, consultez[Configurer le PITR pour une table dans Amazon Keyspaces](configure_PITR.md). 

**Important**  
 Pendant qu'une restauration est en cours, ne modifiez ni ne supprimez les politiques Gestion des identités et des accès AWS (IAM) qui accordent au principal IAM (par exemple, utilisateur, groupe ou rôle) l'autorisation d'effectuer la restauration. Sinon, il peut en résulter un comportement inattendu. Par exemple, si vous supprimez les autorisations d'écriture pour une table alors que celle-ci est en cours de restauration, l'`RestoreTableToPointInTime`opération sous-jacente ne peut écrire aucune des données restaurées dans la table.   
Vous ne pouvez modifier ou supprimer des autorisations qu'une fois l'opération de restauration terminée.

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

**Restaurer une table à un moment précis à l'aide de la console**

1. [Connectez-vous à la AWS Management Console console Amazon Keyspaces et ouvrez-la chez https://console.aws.amazon.com/keyspaces/ vous.](https://console.aws.amazon.com/keyspaces/home)

1. Dans le volet de navigation sur le côté gauche de la console, choisissez **Tables**.

1. Dans la liste des tables, choisissez la table que vous souhaitez restaurer. 

1. Dans l'onglet **Sauvegardes** du tableau, dans la section **Point-in-time de restauration**, choisissez **Restaurer**.

1. Pour le nouveau nom de table, entrez un nouveau nom pour la table restaurée, par exemple**mytable\$1restored**. 

1. Pour définir le moment de l'opération de restauration, vous pouvez choisir entre deux options :
   + Sélectionnez l'heure la **plus ancienne** préconfigurée.
   + Sélectionnez **Spécifier la date et l'heure**, puis entrez la date et l'heure auxquelles vous souhaitez restaurer la nouvelle table.
**Note**  
Vous pouvez effectuer une restauration à n'importe quel moment dans le **plus** bref délai et à l'heure actuelle. Amazon Keyspaces restaure les données de votre table dans leur état en fonction de la date et de l'heure sélectionnées (day:hour:minute:second). 

1. Choisissez **Restaurer** pour démarrer le processus de restauration. 

   La table en cours de restauration s'affiche avec le statut **Restauration en cours**. Une fois le processus de restauration terminé, le statut de la table restaurée passe à **Actif**.

------
#### [ Cassandra Query Language (CQL) ]

**Restaurer une table à un point dans le temps à l'aide de CQL**

1. Vous pouvez rétablir une table active point-in-time entre l'heure actuelle `earliest_restorable_timestamp` et l'heure actuelle. L'heure actuelle est la valeur par défaut.

   Pour confirmer que la point-in-time restauration est activée pour la table, interrogez le `system_schema_mcs.tables` comme indiqué dans cet exemple.

   ```
   SELECT custom_properties
   FROM system_schema_mcs.tables
   WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable';
   ```

   Point-in-time la restauration est activée comme indiqué dans l'exemple de sortie suivant. 

   ```
   custom_properties
   -----------------
   {
     ...,
       "point_in_time_recovery": {
       "earliest_restorable_timestamp":"2020-06-30T19:19:21.175Z"
       "status":"enabled"
     }
   }
   ```

1. 
   + Rétablissez le tableau à l'heure actuelle. Lorsque vous omettez la `WITH restore_timestamp = ...` clause, l'horodatage actuel est utilisé. 

     ```
     RESTORE TABLE mykeyspace.mytable_restored
     FROM TABLE mykeyspace.mytable;
     ```
   + Vous pouvez également effectuer une restauration à un moment précis, défini par un `restore_timestamp` au format ISO 8601. Vous pouvez spécifier n'importe quel instant dans le passé au cours des 35 derniers jours. Par exemple, la commande suivante restaure la table à la `EarliestRestorableDateTime`. 

     ```
     RESTORE TABLE mykeyspace.mytable_restored
     FROM TABLE mykeyspace.mytable
     WITH restore_timestamp = '2020-06-30T19:19:21.175Z';
     ```

     Pour une description complète de la syntaxe, voir [RESTAURER LA TABLE](cql.ddl.table.md#cql.ddl.table.restore) la référence du langage.

1. Pour vérifier que la restauration de la table a réussi, interrogez le `system_schema_mcs.tables` pour confirmer l'état de la table.

   ```
   SELECT status
   FROM system_schema_mcs.tables
   WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable_restored'
   ```

   La requête affiche le résultat suivant.

   ```
   status
   ------
   RESTORING
   ```

   La table en cours de restauration s'affiche avec le statut **Restauration en cours**. Une fois le processus de restauration terminé, le statut de la table passe à **Actif**.

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

**Restaurez un tableau à un point dans le temps à l'aide du AWS CLI**

1. Créez une table simple nommée sur `myTable` laquelle le PITR est activé. La commande a été divisée en lignes distinctes pour des raisons de lisibilité.

   ```
   aws keyspaces create-table --keyspace-name 'myKeyspace' --table-name 'myTable' 
               --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' 
               --point-in-time-recovery 'status=ENABLED'
   ```

1. Vérifiez les propriétés de la nouvelle table et vérifiez le `earliestRestorableTimestamp` PITR.

   ```
   aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'
   ```

   La sortie de cette commande renvoie ce qui suit.

   ```
   {
       "keyspaceName": "myKeyspace",
       "tableName": "myTable",
       "resourceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable",
       "creationTimestamp": "2022-06-20T14:34:57.049000-07:00",
       "status": "ACTIVE",
       "schemaDefinition": {
           "allColumns": [
               {
                   "name": "id",
                   "type": "int"
               },
               {
                   "name": "date",
                   "type": "timestamp"
               },
               {
                   "name": "name",
                   "type": "text"
               }
           ],
           "partitionKeys": [
               {
                   "name": "id"
               }
           ],
           "clusteringKeys": [],
           "staticColumns": []
       },
       "capacitySpecification": {
           "throughputMode": "PAY_PER_REQUEST",
           "lastUpdateToPayPerRequestTimestamp": "2022-06-20T14:34:57.049000-07:00"
       },
       "encryptionSpecification": {
           "type": "AWS_OWNED_KMS_KEY"
       },
       "pointInTimeRecovery": {
           "status": "ENABLED",
           "earliestRestorableTimestamp": "2022-06-20T14:35:13.693000-07:00"
       },
       "defaultTimeToLive": 0,
       "comment": {
           "message": ""
       }
   }
   ```

1. 
   + Pour restaurer un tableau à un point dans le temps, spécifiez un `restore_timestamp` au format ISO 8601. Vous pouvez choisir n'importe quel moment au cours des 35 derniers jours à intervalles d'une seconde. Par exemple, la commande suivante restaure la table à la `EarliestRestorableDateTime`. 

     ```
     aws keyspaces restore-table --source-keyspace-name 'myKeyspace' --source-table-name 'myTable' --target-keyspace-name 'myKeyspace' --target-table-name 'myTable_restored' --restore-timestamp "2022-06-20 21:35:14.693"
     ```

     La sortie de cette commande renvoie l'ARN de la table restaurée.

     ```
     {
         "restoredTableARN": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable_restored"
     }
     ```
   + Pour rétablir l'heure actuelle de la table, vous pouvez omettre le `restore-timestamp` paramètre.

     ```
     aws keyspaces restore-table --source-keyspace-name 'myKeyspace' --source-table-name 'myTable' --target-keyspace-name 'myKeyspace' --target-table-name 'myTable_restored1'"
     ```

------