Tabellenänderungen mit Flashback Time Travel verfolgen
Mit Flashback Time Travel können Sie vergangene Status von Datenbankobjekten anzeigen oder Datenbankobjekte in einen früheren Zustand zurückversetzen, ohne ein Point-in-Time Media Recovery zu verwenden.
Über Flashback Time Travel
Mit Flashback Time Travel können Sie Transaktionsänderungen an einer Tabelle im Laufe ihrer Lebensdauer verfolgen und speichern. Flashback Time Travel ist nützlich für die Einhaltung von Richtlinien und Auditberichten für die Datensatzphase. Sie können Flashback Time Travel auch in verschiedenen Szenarien verwenden, wie z. B. Erzwingen von digitalem Shredding, Zugriff auf historische Daten und selektives Daten-Recovery.
Flashback Time Travel wurde in früheren Oracle AI Database-Versionen als Flashback Data Archive bezeichnet. Die Flashback Time Travel-APIs und einige Flashback Time Travel-Begriffe, wie die Berechtigung FLASHBACK ARCHIVE, behalten die Benennung des Flashback Data Archive bei.
Jede autonome AI-Datenbankinstanz verfügt über ein Flashback Archive namens flashback_archive, das Flashback Time Travel-Vorgänge unterstützt. Die Standardaufbewahrungszeit für flashback_archive beträgt 60 Tage. Informationen zum Ändern der Standardaufbewahrungszeit finden Sie unter Aufbewahrungszeit für Flashback Time Travel ändern.
Um Flashback Time Travel für eine Tabelle zu aktivieren, gelten folgende Einschränkungen:
-
Sie benötigen die Objektberechtigung
FLASHBACK ARCHIVEfürflashback_archive. Standardmäßig verfügt der BenutzerADMINüber diese Berechtigung. -
Folgende Tabelle darf nicht verwendet werden:
-
Eine verschachtelte Tabelle
-
Eine temporäre Tabelle
-
Eine entfernte Tabelle
-
Eine externe Tabelle
-
-
Die Tabelle darf keine
LONG-Spalten enthalten. -
Die Tabelle darf keine verschachtelten Spalten enthalten.
Eine Liste der zusätzlichen Einschränkungen für Flashback Time Travel finden Sie unter Notes for Flashback Time Travel.
Weitere Informationen zur Flashback-Technologie finden Sie unter Oracle Flashback-Technologie verwenden.
Flashback Time Travel für eine Tabelle aktivieren
Beschreibt die Schritte zum Aktivieren von Flashback Time Travel für eine Tabelle in einer autonomen KI-Datenbank.
Flashback Time Travel ist standardmäßig für neue und vorhandene Tabellen deaktiviert.
Um Flashback Time Travel zu aktivieren, ist Folgendes erforderlich:
-
Sie müssen als Benutzer
ADMINangemeldet sein oder über die ObjektberechtigungFLASHBACK ARCHIVEverfügen.Der Benutzer
ADMINoder der Benutzer mit der BerechtigungFLASHBACK ARCHIVEWITH GRANT OPTIONkann die ObjektberechtigungFLASHBACK ARCHIVEeinem anderen Benutzer erteilen.Beispiel:
GRANT FLASHBACK ARCHIVE ON FLASHBACK_ARCHIVE TO <username>GRANT FLASHBACK ARCHIVE ON FLASHBACK_ARCHIVE TO <username> WITH GRANT OPTIONWeitere Informationen finden Sie unter Benutzerrollen und -berechtigungen für autonome KI-Datenbank verwalten.
Sie können Flashback Time Travel für eine vorhandene oder eine neue Tabelle aktivieren, die Sie erstellen.
-
So aktivieren Sie Flashback Time Travel beim Erstellen einer Tabelle:
CREATE TABLE employee (EMPNO NUMBER(4) NOT NULL, ENAME VARCHAR2(10), JOB VARCHAR2(9), MGR NUMBER(4)) FLASHBACK ARCHIVE; -
So aktivieren Sie Flashback Time Travel für eine vorhandene Tabelle:
ALTER TABLE departments FLASHBACK ARCHIVE;
Nachdem Sie Flashback Time Travel für eine Tabelle aktiviert haben, können Sie Flashback Time Travel deaktivieren. Weitere Informationen finden Sie unter Flashback Time Travel für eine Tabelle deaktivieren.
Flashback Time Travel für eine Tabelle deaktivieren
Beschreibt das Verfahren zum Deaktivieren von Flashback Time Travel für eine Tabelle in einer autonomen KI-Datenbank.
Nachdem Flashback Time Travel für eine Tabelle aktiviert wurde, können Sie sie als Benutzer ADMIN oder mit der Objektberechtigung FLASHBACK ARCHIVE deaktivieren.
Beispiel: So deaktivieren Sie Flashback Time Travel für die Tabelle employee:
ALTER TABLE employee NO FLASHBACK ARCHIVE;Aufbewahrungszeit für Flashback Time Travel ändern
Beschreibt das Verfahren zum Ändern der Aufbewahrungszeit für Flashback Time Travel in einer autonomen KI-Datenbank.
Sie können die Aufbewahrungszeit für Flashback Time Travel ändern, wenn Sie als Benutzer ADMIN angemeldet sind oder die Berechtigung EXECUTE für DBMS_CLOUD_ADMIN besitzen.
Beispiel: So legen Sie die Aufbewahrungszeit auf 365 Tage fest:
BEGIN
DBMS_CLOUD_ADMIN.SET_FLASHBACK_ARCHIVE_RETENTION
(retention_days => 365);
END;
/Ausführliche Informationen zur Prozedur finden Sie unter SET_FLASHBACK_ARCHIVE_RETENTION-Prozedur.
Historische Daten für Flashback Time Travel löschen
Beschreibt das Verfahren zum Löschen historischer Daten für Flashback Time Travel in einer autonomen KI-Datenbank.
Sie können historische Daten für Flashback Time Travel löschen, wenn Sie als Benutzer ADMIN angemeldet sind oder die Berechtigung EXECUTE für DBMS_CLOUD_ADMIN besitzen.
Beispiel: So löschen Sie alle historischen Flashback Time Travel-Daten:
BEGIN
DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE
(scope => 'ALL');
END;
/Beispiel zum Löschen der historischen Flashback Time Travel-Daten vor einem angegebenen Zeitstempel:
BEGIN
DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE
(scope => 'TIMESTAMP', before_timestamp => '12-JUL-2023 10:24:00');
END;
/Beispiel zum Löschen historischer Flashback Time Travel-Daten, die älter als 1 Tag sind:
BEGIN
DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE
(scope => 'TIMESTAMP', before_timestamp => SYSTIMESTAMP - INTERVAL '1' DAY);
END;
/Beispiel zum Löschen der historischen Flashback Time Travel-Daten vor dem angegebenen scn:
BEGIN
DBMS_CLOUD_ADMIN.PURGE_FLASHBACK_ARCHIVE
(scope => 'SCN',before_scn=> '5928826');
END;
/Ausführliche Informationen zur Prozedur finden Sie unter Prozedur PURGE_FLASHBACK_ARCHIVE.
Reisedaten für Flashback Time anzeigen
Beschreibt Data Dictionary Views zum Anzeigen von Informationen zu Flashback Time Travel-Dateien in einer autonomen KI-Datenbank.
Sie können Informationen zu Flashback Time Travel-Dateien in statischen Data Dictionary Views anzeigen.
| Anzeigen | Beschreibung |
|---|---|
*_FLASHBACK_ARCHIVE |
Zeigt Informationen zu Flashback Time Travel-Dateien an. |
*_FLASHBACK_ARCHIVE_TS |
Zeigt Tablespaces von Flashback Time Travel-Dateien an. |
*_FLASHBACK_ARCHIVE_TABLES |
Zeigt Informationen zu Tabellen an, für die Flashback Time Travel aktiviert ist. |
Hinweise für Flashback Time Travel
Stellt Notizen und Einschränkungen für die Verwendung von Flashback Time Travel in einer autonomen KI-Datenbank bereit.
Beachten Sie die folgenden Einschränkungen für Flashback Time Travel:
-
Sie können Flashback Time Travel nicht für Tabellen mit
LONG-Datentyp oder Nested Table-Spalten aktivieren. -
Sie können Flashback Time Travel nicht für Nested Tables, temporäre Tabellen, externe Tabellen, Materialized Views, Advanced Query-(AQ-)Tabellen, hybride partitionierte Tabellen oder Nicht-Tabellenobjekte aktivieren.
-
Flashback Time Travel unterstützt keine DDL-Anweisungen, mit denen Partitionen oder Unterpartitionen verschoben, geteilt, zusammengeführt oder zusammengeführt, Tabellen verschoben oder
LONG-Spalten inLOB-Spalten konvertiert werden. -
Das Hinzufügen oder Aktivieren eines Constraints, einschließlich eines Fremdschlüssel-Constraints, für eine Tabelle, die für Flashback Time Travel aktiviert wurde, ist mit ORA-55610 nicht erfolgreich.
Es wird unterstützt, einen Constraint (einschließlich Fremdschlüssel-Constraint) für eine Tabelle zu löschen oder zu deaktivieren, die für Flashback Time Travel aktiviert wurde.
-
Nachdem Flashback Time Travel für eine Tabelle aktiviert wurde, empfiehlt Oracle, dass Sie zunächst mindestens 20 Sekunden warten, bevor Sie Daten in die Tabelle einfügen, und bis zu 5 Minuten warten, bevor Sie Flashback Query für die Tabelle verwenden.
-
Pro Instanz der autonomen KI-Datenbank ist ein Flashback Data Archive mit dem Namen
flashback_archivevorhanden, und Sie können keine zusätzlichen Flashback Data Archive erstellen. -
Sie können das Flashback Data Archive
flashback_archivenicht innerhalb einer autonomen AI-Datenbankinstanz löschen. -
Tablespaces für Flashback Time Travel können nicht erstellt, geändert oder gelöscht werden. Daher können Sie diese Anweisungen nicht ausführen:
ALTER FLASHBACK ARCHIVE flashback_archive ADD TABLESPACE;ALTER FLASHBACK ARCHIVE flashback_archive MODIFY TABLESPACE;ALTER FLASHBACK ARCHIVE flashback_archive REMOVE TABLESPACE; -
Wenn Sie Flashback Time Travel für eine Tabelle aktivieren, Automatic Undo Management (AUM) jedoch deaktiviert ist, tritt beim Versuch, die Tabelle zu ändern, der Fehler ORA-55614 auf.
-
Um Flashback Time Travel für eine Tabelle zu aktivieren, kann die Tabelle keines der folgenden reservierten Wörter für Flashback Time Travel als Spaltennamen verwenden:
-
STARTSCN -
ENDSCN -
RID -
XID -
OP -
OPERATION
-