Rastrear Alterações de Tabela com o Flashback Time Travel
Use o Flashback Time Travel para exibir estados passados de objetos de banco de dados ou para retornar objetos de banco de dados para um estado anterior sem usar a recuperação de mídia em data específica.
- Sobre o Flashback Time Travel
O Flashback Time Travel permite rastrear e armazenar alterações transacionais em uma tabela durante sua vida útil. O Flashback Time Travel é útil para conformidade com as políticas de estágio de registro e relatórios de auditoria. Você também pode usar o Flashback Time Travel em vários cenários, como imposição de fragmentação digital, acesso a dados históricos e recuperação seletiva de dados. - Ativar o Flashback Time Travel para uma Tabela
Descreve as etapas para ativar o Flashback Time Travel para uma tabela no Autonomous Database. - Desativar o Flashback Time Travel para uma Tabela
Descreve o procedimento para desativar o Flashback Time Travel para uma tabela no Autonomous Database. - Modificar o Tempo de Retenção do Flashback Time Travel
Descreve o procedimento para modificar o tempo de retenção do Flashback Time Travel no Autonomous Database. - Expurgar Dados Históricos do Flashback Time Travel
Descreve o procedimento para expurgar dados históricos do Flashback Time Travel no Autonomous Database. - Exibir Informações do Flashback Time Travel
Descreve as views do dicionário de dados para exibir informações sobre arquivos do Flashback Time Travel no Autonomous Database. - Observações do Flashback Time Travel
Fornece observações e restrições para usar o Flashback Time Travel no Autonomous Database.
Tópico principal: Alta Disponibilidade
Sobre o Flashback Time Travel
O Flashback Time Travel permite rastrear e armazenar alterações transacionais em uma tabela durante sua vida útil. O Flashback Time Travel é útil para conformidade com as políticas de estágio de registro e relatórios de auditoria. Você também pode usar o Flashback Time Travel em vários cenários, como imposição de fragmentação digital, acesso a dados históricos e recuperação seletiva de dados.
O Flashback Time Travel era chamado de Flashback Data Archive nas versões anteriores do Oracle Database. As APIs do Flashback Time Travel e alguns termos do Flashback Time Travel, como o privilégio FLASHBACK ARCHIVE
, mantêm a nomenclatura do Flashback Data Archive.
Cada instância do Autonomous Database tem um Flashback Archive chamado flashback_archive
que suporta operações do Flashback Time Travel. O tempo de retenção padrão para flashback_archive
é 60 dias. Consulte Modificar o Tempo de Retenção do Flashback Time Travel para obter informações sobre como alterar o tempo de retenção padrão.
Há restrições para ativar o Flashback Time Travel para uma tabela, incluindo estas:
- Você deve ter o privilégio de objeto
FLASHBACK ARCHIVE
paraflashback_archive
. Por padrão, o usuárioADMIN
tem esse privilégio. - A tabela não deve ser nenhum dos seguintes itens:
- Uma tabela aninhada
- Uma tabela temporária
- Uma tabela remota
- uma tabela externa
- A tabela não pode conter colunas
LONG
. - A tabela não pode conter colunas aninhadas.
Consulte Observações do Flashback Time Travel para obter uma lista de restrições adicionais do Flashback Time Travel.
Consulte Usando o Oracle Flashback Technology para obter mais informações sobre o Flashback Technology.
Tópico principal: Rastrear Alterações de Tabela com o Flashback Time Travel
Ativar o Flashback Time Travel para uma Tabela
Descreve etapas para ativar o Flashback Time Travel para uma tabela no Autonomous Database.
Por padrão, o Flashback Time Travel é desativado para tabelas novas e existentes.
-
Você deve estar conectado como o usuário
ADMIN
ou ter o privilégio de objetoFLASHBACK ARCHIVE
.O usuário
ADMIN
ou o usuário que tem o privilégioFLASHBACK ARCHIVE
WITH GRANT OPTION
pode conceder o privilégio de objetoFLASHBACK ARCHIVE
a outro usuário.Por exemplo:
GRANT FLASHBACK ARCHIVE ON FLASHBACK_ARCHIVE TO <username>
GRANT FLASHBACK ARCHIVE ON FLASHBACK_ARCHIVE TO <username> WITH GRANT OPTION
Consulte Gerenciar Atribuições e Privilégios de Usuário no Autonomous Database para obter mais informações.
Você pode ativar o Flashback Time Travel para uma tabela existente ou uma nova tabela que você está criando.
Depois de ativar o Flashback Time Travel para uma tabela, você poderá desativar o Flashback Time Travel. Consulte Desativar o Flashback Time Travel para uma Tabela para obter mais informações.
Tópico principal: Rastrear Alterações de Tabela com o Flashback Time Travel
Desativar o Flashback Time Travel para uma Tabela
Descreve o procedimento para desativar o Flashback Time Travel para uma tabela no Autonomous Database.
Depois que o Flashback Time Travel é ativado para uma tabela, você pode desativá-lo como usuário ADMIN
ou se tiver o privilégio de objeto FLASHBACK ARCHIVE
.
employee
:ALTER TABLE employee NO FLASHBACK ARCHIVE;
Tópico principal: Rastrear Alterações de Tabela com o Flashback Time Travel
Modificar o Tempo de Retenção do Flashback Time Travel
Descreve o procedimento para modificar o tempo de retenção do Flashback Time Travel no Autonomous Database.
Você poderá modificar o tempo de retenção do Flashback Time Travel se estiver conectado como usuário ADMIN
ou se tiver privilégio EXECUTE
em DBMS_CLOUD_ADMIN
.
BEGIN
DBMS_CLOUD_ADMIN.SET_FLASHBACK_ARCHIVE_RETENTION
(retention_days => 365);
END;
/
Consulte Procedimento SET_FLASHBACK_ARCHIVE_RETENTION para obter informações detalhadas sobre o procedimento.
Tópico principal: Rastrear Alterações de Tabela com o Flashback Time Travel
Limpar Dados Históricos do Flashback Time Travel
Descreve o procedimento para limpar dados históricos do Flashback Time Travel no Autonomous Database.
Você poderá expurgar dados históricos do Flashback Time Travel se estiver conectado como o usuário ADMIN
ou se tiver o privilégio EXECUTE
em DBMS_CLOUD_ADMIN
.
BEGIN
DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE
(scope => 'ALL');
END;
/
BEGIN
DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE
(scope => 'TIMESTAMP', before_timestamp => '12-JUL-2023 10:24:00');
END;
/
BEGIN
DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE
(scope => 'TIMESTAMP', before_timestamp => SYSTIMESTAMP - INTERVAL '1' DAY);
END;
/
BEGIN
DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE
(scope => 'SCN',before_scn=> '5928826');
END;
/
Consulte PURGE_FLASHBACK_ARCHIVE Procedimento para obter informações detalhadas sobre o procedimento.
Tópico principal: Rastrear Alterações de Tabela com o Flashback Time Travel
Exibir Informações do Flashback Time Travel
Descreve as views do dicionário de dados para exibir informações sobre arquivos do Flashback Time Travel no Autonomous Database.
Você pode exibir informações sobre os arquivos do Flashback Time Travel nas views de dicionário de dados estáticos.
Exibir | Descrição |
---|---|
*_FLASHBACK_ARCHIVE |
Exibe informações sobre os arquivos do Flashback Time Travel. |
*_FLASHBACK_ARCHIVE_TS |
Exibe tablespaces de arquivos do Flashback Time Travel. |
*_FLASHBACK_ARCHIVE_TABLES |
Exibe informações sobre tabelas que têm o Flashback Time Travel ativado. |
Tópico principal: Rastrear Alterações de Tabela com o Flashback Time Travel
Observações do Flashback Time Travel
Fornece observações e restrições ao usar o Flashback Time Travel no Autonomous Database.
Observe as seguintes restrições do Flashback Time Travel:
-
Não é possível ativar o Flashback Time Travel em tabelas com o tipo de dados
LONG
ou colunas de tabelas aninhadas. -
Não é possível ativar o Flashback Time Travel em uma tabela aninhada, tabela temporária, tabela externa, view materializada, tabela de Consulta Avançada (AQ), tabelas híbridas particionadas ou em um objeto que não seja tabela.
-
O Flashback Time Travel não suporta instruções DDL que movem, dividem, mesclam ou unem partições ou subpartições, movem tabelas ou convertem colunas
LONG
em colunasLOB
. -
Falha ao adicionar ou ativar uma Restrição, incluindo a Restrição de Chave Estrangeira, em uma tabela que foi ativada para o Flashback Time Travel com ORA-55610.
Há suporte para eliminar ou desativar uma Restrição (incluindo Restrição de Chave Estrangeira) em uma tabela que foi ativada para o Flashback Time Travel.
- Depois de ativar o Flashback Time Travel em uma tabela, a Oracle recomenda inicialmente aguardar pelo menos 20 segundos antes de inserir dados na tabela e aguardar até 5 minutos antes de usar o Flashback Query na tabela.
-
Há um Flashback Data Archive por instância do Autonomous Database, chamado
flashback_archive
, e você não pode criar Flashback Data Archives adicionais. -
Você não pode eliminar o Flashback Data Archive,
flashback_archive
, em uma instância do Autonomous Database. -
Você não pode criar, modificar ou eliminar tablespaces para o Flashback Data Archive. Portanto, não é possível executar estas instruções:
-
ALTER FLASHBACK ARCHIVE flashback_archive ADD TABLESPACE;
-
ALTER FLASHBACK ARCHIVE flashback_archive MODIFY TABLESPACE;
-
ALTER FLASHBACK ARCHIVE flashback_archive REMOVE TABLESPACE;
-
-
Se você ativar o Flashback Time Travel em uma tabela, mas o Gerenciamento Automático de Undo (AUM) estiver desativado, o erro ORA-55614 ocorrerá quando você tentar modificar a tabela.
- Para ativar o Flashback Time Travel em uma tabela, a tabela não pode usar nenhuma das seguintes palavras reservadas do Flashback Time Travel como nomes de coluna:
STARTSCN
ENDSCN
RID
XID
OP
OPERATION
Tópico principal: Rastrear Alterações de Tabela com o Flashback Time Travel