

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Restaurar uma tabela do backup para um determinado ponto no tempo no Amazon Keyspaces
<a name="restoretabletopointintime"></a>

A seção a seguir demonstra como restaurar uma tabela existente do Amazon Keyspaces para um ponto específico no tempo. 

**nota**  
Esse procedimento pressupõe que a tabela que você está usando tenha sido configurada com point-in-time recuperação. Para habilitar a PITR para uma tabela, consulte [Configurar PITR para uma tabela no Amazon Keyspaces](configure_PITR.md). 

**Importante**  
 Enquanto uma restauração estiver em andamento, não modifique nem exclua as políticas AWS Identity and Access Management (IAM) que concedem permissão ao principal do IAM (por exemplo, usuário, grupo ou função) para realizar a restauração. Do contrário, pode haver um comportamento inesperado. Por exemplo, se você remover permissões de gravação de uma tabela enquanto ela estiver sendo restaurada, a operação `RestoreTableToPointInTime` subjacente não conseguirá gravar na tabela nenhum dos dados restaurados.   
Você pode modificar ou excluir permissões somente depois que a operação de restauração é concluída.

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

**Restaurar uma tabela para um ponto específico no tempo usando o console**

1. [Faça login no Console de gerenciamento da AWS e abra o console do Amazon Keyspaces em casahttps://console.aws.amazon.com/keyspaces/.](https://console.aws.amazon.com/keyspaces/home)

1. No painel de navegação, no lado esquerdo do console, selecione **Tables** (Tabelas).

1. Na lista de tabelas, escolha aquela que você quer restaurar. 

1. Na guia **Backups** da tabela, na seção **Point-in-time Recuperação**, escolha **Restaurar**.

1. Para o nome da nova tabela, insira um nome para a tabela restaurada, por exemplo **mytable\$1restored**. 

1. Para definir o ponto no tempo da operação de restauração, você pode escolher entre duas opções:
   + Selecione a hora **Mais antiga** pré-configurada.
   + Selecione **Especificar data e hora** e insira a data e a hora para as quais você deseja restaurar a nova tabela.
**nota**  
É possível fazer a restauração para qualquer ponto no tempo dentro da hora **Mais antiga** e da hora atual. O Amazon Keyspaces restaura os dados da tabela para o estado com base na data e na hora selecionadas (dia:hora:minuto:segundo). 

1. Selecione **Restaurar** para iniciar o processo de restauração. 

   A tabela que está sendo restaurada é mostrada com o status **Restoring (Em restauração)**. Quando o processo de restauração for concluído, o status da tabela restaurada mudará para **Ativo**.

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

**Restaurar uma tabela para um ponto no tempo usando CQL**

1. Você pode restaurar uma tabela ativa para uma hora point-in-time entre `earliest_restorable_timestamp` e a hora atual. O padrão é a hora atual.

   Para confirmar se a point-in-time recuperação está habilitada para a tabela, consulte o `system_schema_mcs.tables` conforme mostrado neste exemplo.

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

   Point-in-time a recuperação é ativada conforme mostrado no exemplo de saída a seguir. 

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

1. 
   + Restaure a tabela para a hora atual. Quando você omite a cláusula `WITH restore_timestamp = ...`, é usado o carimbo de data/hora atual. 

     ```
     RESTORE TABLE mykeyspace.mytable_restored
     FROM TABLE mykeyspace.mytable;
     ```
   + Você também pode restaurar para um ponto específico no tempo, definido por um `restore_timestamp` no formato ISO 8601. Você pode especificar qualquer ponto durante os últimos 35 dias. Por exemplo, o comando a seguir restaura a tabela para o `EarliestRestorableDateTime`. 

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

     Para obter uma descrição completa da sintaxe, consulte [RESTAURAR TABELA](cql.ddl.table.md#cql.ddl.table.restore) na referência de linguagem.

1. Para verificar se a restauração da tabela foi bem-sucedida, consulte o `system_schema_mcs.tables` para confirmar o status da tabela.

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

   A consulta mostra o a saída a seguir.

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

   A tabela que está sendo restaurada é mostrada com o status **Restoring (Em restauração)**. Quando o processo de restauração for concluído, o status da tabela mudará para **Active (Ativo)**.

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

**Restaure uma tabela em um determinado momento usando o AWS CLI**

1. Criar uma tabela simples chamada `myTable` que tem a PITR ativada. O comando foi dividido em linhas separadas para facilitar a leitura.

   ```
   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. Confirme as propriedades da nova tabela e revise `earliestRestorableTimestamp` para o PITR.

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

   A saída deste comando retorna o seguinte.

   ```
   {
       "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. 
   + Para restaurar uma tabela para um ponto no tempo, especifique um `restore_timestamp` no formato ISO 8601. É possível escolher qualquer ponto no tempo durante os últimos 35 dias em intervalos de um segundo. Por exemplo, o comando a seguir restaura a tabela para o `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"
     ```

     A saída desse comando retornará o ARN da tabela restaurada.

     ```
     {
         "restoredTableARN": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable_restored"
     }
     ```
   + Para restaurar a tabela para a hora atual, você pode omitir o parâmetro `restore-timestamp`.

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

------