Restaurar uma instância do RDS Custom for Oracle para um ponto no tempo
É possível restaurar uma instância de banco de dados para um ponto anterior no tempo (PITR) criando uma nova instância de banco de dados. Para dar suporte ao PITR, suas instâncias de banco de dados devem ter a retenção de backup definida como diferente de zero.
O tempo de restauração mais recente de uma instância de banco de dados do RDS Custom for Oracle depende de vários fatores, mas em geral é de até cinco minutos do horário atual. Para visualizar o tempo restaurável mais recente para uma instância de banco de dado, use o comando AWS CLI describe-db-instances e confira o valor retornado no campo LatestRestorableTime
para a instância de banco de dados. Para ver o tempo de restauração mais recente para cada instância de banco de dados no console Amazon RDS, selecione Backups automatizados.
É possível fazer a restauração para qualquer momento dentro do período de retenção de backup. Para ver o tempo de restauração mais antigo para cada instância de banco de dados, selecione Backups automatizados no console do Amazon RDS.
Para obter informações gerais sobre PITR, consulte Restaurar uma instância de banco de dados para um momento especificado no Amazon RDS.
Considerações sobre o PITR para o RDS Custom for Oracle
No RDS Custom for Oracle, o PITR difere das seguintes maneiras importantes do PITR no Amazon RDS:
-
O banco de dados restaurado tem o mesmo nome da instância de banco de dados de origem. Se desejar, especifique um nome diferente. O padrão é
ORCL
. -
AWSRDSCustomIamRolePolicy
requer novas permissões. Para obter mais informações, consulte Etapa 2: Adicionar uma política de acesso a AWSRDSCustomInstanceRoleForRdsCustomInstance. -
Todas as instâncias de banco de dados do RDS Custom for Oracle devem ter a retenção de backup definida como um valor diferente de zero.
-
Se você alterar o fuso horário do sistema operacional ou da instância de banco de dados, a PITR talvez não funcione. Para obter informações sobre como alterar fusos horários, consulte Fuso horário da Oracle.
-
Se você definir a automação como
ALL_PAUSED
, o RDS Custom pausará o upload dos arquivos de log redo arquivados, incluindo os logs criados antes da hora da última restauração possível (LRT). Convém pausar a automação por um breve período.Para ilustrar, suponha que sua LRT seja 10 minutos atrás. Você pausa a automação. Durante a pausa, o RDS Custom não carrega logs de redo arquivados. Se a sua instância de banco de dados falhar, apenas será possível recuperar em um momento antes da LRT que existia quando você pausou. Quando você retomar a automação, o RDS Custom retomará o carregamento de logs. A LRT avançará. Regras de PITR normais são aplicáveis.
-
No RDS Custom, é possível especificar manualmente um número arbitrário de horas para reter logs de redo arquivados antes que o RDS Custom os exclua após o upload. Especifique o número de horas da seguinte forma:
-
Crie um arquivo de texto chamado
/opt/aws/rdscustomagent/config/redo_logs_custom_configuration.json
. -
Adicione um objeto JSON no seguinte formato:
{"archivedLogRetentionHours" : "
. O número deve ser um número inteiro no intervalo de 1 a 840.num_of_hours
"}
-
-
Suponha que você conecte um não CDB a um banco de dados de contêiner (CDB) como um PDB e, depois, tente o PITR. A operação só será bem-sucedida se você tiver feito backup do PDB anteriormente. Depois de criar ou modificar um PDB, recomendamos que você sempre faça backup dele.
-
Convém não personalizar parâmetros de inicialização do banco de dados. Por exemplo, a modificação dos seguintes parâmetros afeta a PITR:
-
CONTROL_FILE_RECORD_KEEP_TIME
afeta as regras para carregar e excluir logs. -
LOG_ARCHIVE_DEST_n
não oferece suporte a vários destinos. -
ARCHIVE_LAG_TARGET
afeta a última restauração possível.ARCHIVE_LAG_TARGET
está definido como300
porque o objetivo de ponto de recuperação (RPO) é de cinco minutos. Para honrar esse objetivo, o RDS troca o log redo on-line a cada cinco minutos e o armazena em um bucket do Amazon S3. Se a frequência da troca de log causar um problema de desempenho em seu banco de dados do RDS Custom para Oracle, você poderá escalar a instância de banco de dados e o armazenamento para um com maior IOPS e throughput. Se necessário para seu plano de recuperação, é possível ajustar a configuração do parâmetro de inicializaçãoARCHIVE_LAG_TARGET
para um valor de 60 a 7.200.
-
-
Se você personalizar os parâmetros de inicialização do banco de dados, é altamente recomendável personalizar apenas o seguinte:
-
COMPATIBLE
-
MAX_STRING_SIZE
-
DB_FILES
-
UNDO_TABLESPACE
-
ENABLE_PLUGGABLE_DATABASE
-
CONTROL_FILES
-
AUDIT_TRAIL
-
AUDIT_TRAIL_DEST
Para todos os outros parâmetros de inicialização, o RDS Custom restaura os valores padrão. Se você modificar um parâmetro que não esteja na lista anterior, ele talvez tenha um efeito adverso na PITR, levando a resultados imprevisíveis. Por exemplo,
CONTROL_FILE_RECORD_KEEP_TIME
afeta as regras para carregar e excluir logs. -
Você pode restaurar uma instância de banco de dados do RDS Custom em um ponto anterior utilizando o AWS Management Console, a AWS CLI ou a API do RDS.
Para restaurar uma instância de banco de dados do RDS Custom para um ponto anterior especificado
Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/
. -
No painel de navegação, escolha Automated backups (Backups automatizados).
-
Escolha a instância de banco de dados do RDS Custom que você deseja restaurar.
-
Em Actions (Ações), escolha Restore to point in time (Restaurar para point-in-time).
A janela Restore to point in time (Restaurar para point-in-time) é exibida.
-
Escolha Latest restorable time (Hora da última restauração) para restaurar no último horário possível ou escolha Custom (Personalizar) para escolher um horário.
Se você escolher Custom (Personalizado), insira a data e a hora para a qual deseja restaurar a instância.
Os horários são mostrados no fuso horário local, que é indicado por um deslocamento do Tempo Universal Coordenado (UTC). Por exemplo, UTC-5 é a Hora Padrão do Leste dos EUA/Horário de Verão Central.
-
Para DB instance identifier (Identificador de instância de banco de dados), insira o nome da instância de banco de dados do RDS Custom restaurada de destino. O nome deve ser exclusivo.
-
Escolha outras opções conforme necessário, como a classe da instância de banco de dados.
-
Escolha Restore to point in time (Restaurar para point-in-time).
Você restaura uma instância de banco de dados em um horário especificado utilizando o comando restore-db-instance-to-point-in-time da AWS CLI para criar uma nova instância de banco de dados do RDS Custom.
Utilize uma das seguintes opções para especificar o backup a ser restaurado:
-
--source-db-instance-identifier
mysourcedbinstance
-
--source-dbi-resource-id
dbinstanceresourceID
-
--source-db-instance-automated-backups-arn
backupARN
A opção custom-iam-instance-profile
é obrigatória.
O exemplo a seguir restaura my-custom-db-instance
para uma nova instância de banco de dados denominada my-restored-custom-db-instance
, a partir do ponto anterior especificado.
Para Linux, macOS ou Unix:
aws rds restore-db-instance-to-point-in-time \ --source-db-instance-identifier
my-custom-db-instance
\ --target-db-instance-identifiermy-restored-custom-db-instance
\ --custom-iam-instance-profileAWSRDSCustomInstanceProfileForRdsCustomInstance
\ --restore-time2022-10-14T23:45:00.000Z
Para Windows:
aws rds restore-db-instance-to-point-in-time ^ --source-db-instance-identifier
my-custom-db-instance
^ --target-db-instance-identifiermy-restored-custom-db-instance
^ --custom-iam-instance-profileAWSRDSCustomInstanceProfileForRdsCustomInstance
^ --restore-time2022-10-14T23:45:00.000Z