Mit Wiederherstellungs-Logdateien der Oracle-Datenbank arbeiten

Übersicht

Datastream nutzt Oracle LogMiner, das Teil der Oracle-Datenbank ist, zum Archivieren archivierter Redo-Logdateien. Diese Dateien enthalten Informationen zum Verlauf der Aktivitäten in einer Datenbank.

Jede Oracle-Datenbank enthält eine Reihe von Online-Redo-Logdateien. Alle Transaktionsdatensätze in der Datenbank werden in den Dateien aufgezeichnet.

Wenn die aktuelle Redo-Logdatei rotiert oder gewechselt wird, kopiert der Archivierungsprozess diese Datei in einen Archivspeicher. In der Zwischenzeit stuft die Datenbank eine andere Datei zur aktuellen Datei hoch.

Der Oracle-Connector von Datastream extrahiert CDC-Ereignisse (Change Data Capture) aus archivierten Oracle-Redo-Logdateien.

Konfigurationsparameter für die Redo-Logdateien von Oracle festlegen

Dieses Design hat erhebliche Auswirkungen auf die potenzielle Latenz von Datastream. Wenn die Redo-Logdateien von Oracle häufig geändert oder in einer kleineren Größe (z. B. < 256 MB) beibehalten werden, kann Datastream Änderungen schneller replizieren.

Es gibt Konfigurationsparameter, mit denen Sie die Rotationshäufigkeit von Logdateien steuern können:

  • Größe: Online-Redo-Logdateien haben eine Mindestgröße von 4 MB. Die Standardgröße hängt von Ihrem Betriebssystem ab. Sie können die Größe der Logdateien ändern, indem Sie neue Onlinelogdateien erstellen und die älteren Logdateien löschen.

    Führen Sie die folgende Abfrage aus, um die Größe der Online-Redo-Logdateien zu ermitteln:

    SELECT GROUP#, STATUS, BYTES/1024/1024 MB FROM V$LOG

  • Zeit: Der Parameter ARCHIVE_LAG_TARGET gibt eine Obergrenze für die Dauer (in Sekunden) des aktuellen Logs der primären Datenbank an.

    Dies ist nicht die genaue Zeit für den Logwechsel, da berücksichtigt wird, wie lange das Archivieren des Logs dauern wird. Der Standardwert ist 0 (keine Obergrenze) und ein angemessener Wert von 1800 (oder 30 Minuten) wird empfohlen.

    Sie können die folgenden Befehle verwenden, um den Parameter ARCHIVE_LAG_TARGET festzulegen, entweder während der Initialisierung oder während die Datenbank in Betrieb ist:

    • SHOW PARAMETER ARCHIVE_LAG_TARGET; Dieser Befehl zeigt an, wie viele Sekunden das aktuelle Log benötigt.
    • ALTER SYSTEM SET ARCHIVE_LAG_TARGET = number-of-seconds; Verwenden Sie diesen Befehl, um die Obergrenze zu ändern.

      Beispiel: Wenn Sie die Obergrenze auf 10 Minuten (bzw. 600 Sekunden) einstellen möchten, geben Sie ALTER SYSTEM SET ARCHIVE_LAG_TARGET = 600; ein.