Suivi des modifications de table avec Flashback Time Travel
Utilisez Flashback Time Travel afin de visualiser les états passés d'objets de base de données ou de rétablir un état antérieur sans utiliser la restauration physique jusqu'à un point dans le temps.
- A propos de Flashback Time Travel
Flashback Time Travel vous permet de suivre et de stocker les modifications transactionnelles apportées à une table pendant toute sa durée de vie. Flashback Time Travel permet de se conformer aux stratégies de phase d'enregistrement et de générer des états d'audit. Vous pouvez également utiliser Flashback Time Travel dans différents scénarios tels que la mise en application du broyage numérique, l'accès aux données historiques et la récupération sélective des données. - Activation de Flashback Time Travel pour une table
Décrit les étapes d'activation de Flashback Time Travel pour une table dans Autonomous Database. - Désactivation de Flashback Time Travel pour une table
Décrit la procédure de désactivation de Flashback Time Travel pour une table dans Autonomous Database. - Modification de la durée de conservation pour Flashback Time Travel
Décrit la procédure de modification de la durée de conservation pour Flashback Time Travel dans Autonomous Database. - Purge des données historiques pour Flashback Time Travel
Procédure de purge des données historiques pour Flashback Time Travel dans Autonomous Database. - Affichage des informations Flashback Time Travel
Décrit les vues de dictionnaire de données permettant d'afficher des informations sur les fichiers Flashback Time Travel dans Autonomous Database. - Remarque relative à Flashback Time Travel
Fournit des remarques et des restrictions relatives à l'utilisation de Flashback Time Travel sur Autonomous Database.
Rubrique parent : Haute disponibilité
À propos de Flashback Time Travel
Flashback Time Travel vous permet de suivre et de stocker les modifications transactionnelles apportées à une table pendant sa durée de vie. Flashback Time Travel permet de se conformer aux stratégies de phase d'enregistrement et de générer des états d'audit. Vous pouvez également utiliser Flashback Time Travel dans différents scénarios tels que la mise en application du broyage numérique, l'accès aux données historiques et la récupération sélective des données.
Flashback Time Travel était appelé Flashback Data Archive dans les versions précédentes d'Oracle Database. Les API Flashback Time Travel et certains termes Flashback Time Travel, tels que le privilège FLASHBACK ARCHIVE
, conservent la dénomination Flashback Data Archive.
Chaque instance Autonomous Database dispose d'une archive Flashback nommée flashback_archive
qui prend en charge les opérations Flashback Time Travel. La durée de conservation par défaut de flashback_archive
est de 60 jours. Pour plus d'informations sur la modification de la durée de conservation par défaut, reportez-vous à Modification de la durée de conservation pour Flashback Time Travel.
Des restrictions s'appliquent à l'activation de Flashback Time Travel pour une table, notamment les suivantes :
- Vous devez disposer du privilège d'objet
FLASHBACK ARCHIVE
pourflashback_archive
. Ce privilège est accordé à l'utilisateurADMIN
par défaut. - La table ne doit pas être de l'un des types suivants :
- Une table imbriquée
- Une table temporaire
- Table distante
- Table externe
- La table ne peut pas contenir de colonnes
LONG
. - La table ne peut pas contenir de colonnes imbriquées.
Reportez-vous à Remarques relatives à Flashback Time Travel pour obtenir la liste des restrictions supplémentaires relatives à Flashback Time Travel.
Pour plus d'informations sur la technologie Flashback, reportez-vous à Utilisation de la technologie Oracle Flashback.
Rubrique parent : Suivi des modifications de table avec Flashback Time Travel
Activation de Flashback Time Travel pour une table
Décrit les étapes d'activation de Flashback Time Travel pour une table dans Autonomous Database.
Par défaut, Flashback Time Travel est désactivé pour les tables nouvelles et existantes.
-
Vous devez être connecté en tant qu'utilisateur
ADMIN
ou disposer du privilège d'objetFLASHBACK ARCHIVE
.L'utilisateur
ADMIN
ou l'utilisateur disposant du privilègeFLASHBACK ARCHIVE
WITH GRANT OPTION
peut accorder le privilège d'objetFLASHBACK ARCHIVE
à un autre utilisateur.Exemple :
GRANT FLASHBACK ARCHIVE ON FLASHBACK_ARCHIVE TO <username>
GRANT FLASHBACK ARCHIVE ON FLASHBACK_ARCHIVE TO <username> WITH GRANT OPTION
Pour plus d'informations, reportez-vous à Gestion des rôles et privilèges utilisateur et des privilèges sur Autonomous Database.
Vous pouvez activer Flashback Time Travel pour une table existante ou une table que vous créez.
Après avoir activé Flashback Time Travel pour une table, vous pouvez désactiver Flashback Time Travel. Pour plus d'informations, reportez-vous à Désactivation de Flashback Time Travel pour une table.
Rubrique parent : Suivi des modifications de table avec Flashback Time Travel
Désactivation de Flashback Time Travel pour une table
Description de la procédure de désactivation de Flashback Time Travel pour une table dans Autonomous Database.
Une fois Flashback Time Travel activé pour une table, vous pouvez le désactiver en tant qu'utilisateur ADMIN
ou si vous disposez du privilège d'objet FLASHBACK ARCHIVE
.
employee
, procédez comme suit :ALTER TABLE employee NO FLASHBACK ARCHIVE;
Rubrique parent : Suivi des modifications de table avec Flashback Time Travel
Modification de la durée de conservation pour Flashback Time Travel
Décrit la procédure de modification de la durée de conservation pour Flashback Time Travel dans Autonomous Database.
Vous pouvez modifier la durée de conservation pour Flashback Time Travel si vous êtes connecté en tant qu'utilisateur ADMIN
ou si vous disposez du privilège EXECUTE
sur DBMS_CLOUD_ADMIN
.
BEGIN
DBMS_CLOUD_ADMIN.SET_FLASHBACK_ARCHIVE_RETENTION
(retention_days => 365);
END;
/
Pour plus d'informations sur la procédure, reportez-vous à SET_FLASHBACK_ARCHIVE_RETENTION Procédure.
Rubrique parent : Suivi des modifications de table avec Flashback Time Travel
Purger les données historiques pour Flashback Time Travel
Décrit la procédure de purge des données historiques pour Flashback Time Travel dans Autonomous Database.
Vous pouvez purger les données historiques pour Flashback Time Travel si vous êtes connecté en tant qu'utilisateur ADMIN
ou si vous disposez du privilège EXECUTE
sur 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;
/
Pour plus d'informations sur la procédure, reportez-vous à PURGE_FLASHBACK_ARCHIVE Procédure.
Rubrique parent : Suivi des modifications de table avec Flashback Time Travel
Afficher les informations Flashback Time Travel
Description des vues de dictionnaire de données permettant d'afficher des informations sur les fichiers Flashback Time Travel dans Autonomous Database.
Vous pouvez afficher les informations sur les fichiers Flashback Time Travel dans des vues de dictionnaire de données statiques.
Visualiser | Description |
---|---|
*_FLASHBACK_ARCHIVE |
Affiche des informations sur les fichiers Flashback Time Travel. |
*_FLASHBACK_ARCHIVE_TS |
Affiche les tablespaces des fichiers Flashback Time Travel. |
*_FLASHBACK_ARCHIVE_TABLES |
Affiche des informations sur les tables pour lesquelles Flashback Time Travel est activé. |
Rubrique parent : Suivi des modifications de table avec Flashback Time Travel
Notes relatives à Flashback Time Travel
Fournit des remarques et des restrictions relatives à l'utilisation de Flashback Time Travel sur Autonomous Database.
Notez les restrictions relatives à Flashback Time Travel suivantes :
-
Vous ne pouvez pas activer Flashback Time Travel sur des tables avec des colonnes de table imbriquée ou de type de données
LONG
. -
Vous ne pouvez pas activer Flashback Time Travel sur une table imbriquée, temporaire, externe, matérialisée, de requête avancée (AQ), partitionnée hybride ou non.
-
Flashback Time Travel ne prend pas en charge les instructions DDL qui permettent de déplacer, de fractionner ou de fusionner des partitions ou sous-partitions, de déplacer des tables ou de convertir des colonnes
LONG
en colonnesLOB
. -
L'ajout ou l'activation d'une contrainte, y compris d'une contrainte de clé étrangère, sur une table pour laquelle Flashback Time Travel est activé échoue avec l'erreur ORA-55610.
La suppression ou la désactivation d'une contrainte (y compris d'une contrainte de clé étrangère) sur une table pour laquelle Flashback Time Travel est activé est prise en charge.
- Après avoir activé Flashback Time Travel sur une table, Oracle recommande d'attendre au moins 20 secondes avant d'insérer des données dans la table et d'attendre jusqu'à 5 minutes avant d'utiliser une requête Flashback sur la table.
-
Il existe une archive Flashback Data Archive par instance Autonomous Database, nommée
flashback_archive
, et vous ne pouvez pas en créer d'autres. -
Vous ne pouvez pas supprimer l'archive Flashback Data Archive,
flashback_archive
, dans une instance Autonomous Database. -
Vous ne pouvez pas créer, modifier ou supprimer des tablespaces du fichier Flashback Data Archive. Par conséquent, vous ne pouvez pas exécuter les instructions suivantes :
-
ALTER FLASHBACK ARCHIVE flashback_archive ADD TABLESPACE;
-
ALTER FLASHBACK ARCHIVE flashback_archive MODIFY TABLESPACE;
-
ALTER FLASHBACK ARCHIVE flashback_archive REMOVE TABLESPACE;
-
-
Si vous activez Flashback Time Travel sur une table, mais que la gestion automatique de l'annulation est désactivée, l'erreur ORA-55614 se produit lorsque vous essayez de modifier la table.
- Pour pouvoir activer Flashback Time Travel sur une table, celle-ci ne peut pas utiliser l'un des mots réservés suivants comme noms de colonne :
STARTSCN
ENDSCN
RID
XID
OP
OPERATION
Rubrique parent : Suivi des modifications de table avec Flashback Time Travel