PointInTimeRecoveryUnavailableException

TL;DR — A recuperação pontual não foi habilitada nesta tabela de origem, portanto, não há histórico de backup contínuo para restaurar. Habilite o PITR agora (UpdateContinuousBackups) – a janela de recuperação começa a partir desse momento – e para qualquer coisa anterior, restaure a partir de um backup on-demand, se você tiver um.

O que significa

PointInTimeRecoveryUnavailableException: Point in time recovery has not
yet been enabled for this source table.

# what the engine actually returns, reproduced against Amazon DynamoDB (live service, us-east-1):
PointInTimeRecoveryUnavailableException: Point in time recovery is not enabled for table 'seo-repro-scratch'

PITR é opcional por tabela. Até ser ativado, o DynamoDB não mantém nenhum histórico de alterações contínuo e o RestoreTableToPointInTime não tem nada para reconstruir - independentemente de há quanto tempo a tabela existe. Esta é uma lacuna de configuração, não um erro transitório; tentar novamente não mudará a resposta.

Por que isso acontece

  • PITR nunca foi habilitado — fica desativado por padrão quando uma tabela é criada sem ativá-la explicitamente.
  • Uma nova tabela não foi incluída na lista de verificação — código de infraestrutura copiado de um modelo que não define PointInTimeRecoverySpecification.
  • O nome da tabela errado — você está restaurando o orders, mas o PITR foi habilitado no orders-prod (ou vice-versa) ou a tabela reside em outra região.

Como corrigir

  1. Confirme o estado de backup da tabela:

    aws dynamodb describe-continuous-backups --table-name orders
    # PointInTimeRecoveryStatus: DISABLED
  2. Ative o PITR — a proteção começa a acumular imediatamente, e a janela de restauração cresce de agora até o período de recuperação configurado:

    aws dynamodb update-continuous-backups --table-name orders \
      --point-in-time-recovery-specification PointInTimeRecoveryEnabled=true
  3. Recupere os dados de hoje de outra maneira — o PITR não pode alcançar o passado retroativamente. Se existir um backup on-demand, RestoreTableFromBackup; caso contrário, o conteúdo atual da tabela será o que você possui.

  4. Incorpore o PITR na criação da tabela — configure-o em seu IaC para cada tabela de produção para que a lacuna não se repita e lembre-se de que uma tabela restaurada também não herda o PITR — reative-o na nova tabela.

  5. Verifique a região correta. PITR é por tabela por região; uma chamada de restauração em uma réplica em outra região ainda precisa do PITR habilitado na cópia da tabela dessa região.

Antes de tentar de novo no DynoTable

Antes de decidir quais tabelas precisam de PITR, navegue em seu conteúdo no DynoTable — abra cada tabela com ⌘K entre regiões (⌘P alterna perfis) e confirme se os dados valem o custo de backup contínuo. A calculadora de preços estima as cobranças de armazenamento PITR por tabela para que você possa priorizar as cargas de trabalho de produção.

Depois de ativar o PITR, verifique o status do backup no console ou CLI do AWS e, em seguida, verifique os dados restaurados no DynoTable assim que uma restauração de teste for concluída. Configure perfis em Configurações → Perfis com Conexão de teste para cada região. Consulte Conectar ao AWS e Instalar. O armazenamento PITR é acumulado a partir do momento da ativação — não há janela retroativa para dados gravados antes de você ativá-lo.

Fontes

Erros relacionados

Referências

Última verificação em 13/07/2026 em relação à documentação oficial do AWS vinculada acima.

Trabalhe com o DynamoDB sem o Console

Um cliente desktop rápido para DynamoDB que roda o SQL de verdade que o DynamoDB não consegue — JOINs, GROUP BY, agregações — com edição visual e um agente de IA com suas próprias chaves do Bedrock.

Teste grátis de 30 dias, sem cartão de crédito — depois o plano Grátis sem limite de tempo.