Der Database Migration Service nutzt die Oracle LogMiner API, die Teil der Oracle-Datenbank ist, um archivierte Redo-Logdateien abzufragen. 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 Protokolldatei für die Wiederherstellung rotiert (oder gewechselt) wird, kopiert der Archivierungsvorgang diese Datei in einen Archivspeicher. In der Zwischenzeit wird in der Datenbank eine andere Datei als aktuelle Datei festgelegt.
Wenn der Database Migration Service die Oracle LogMiner API verwendet, greift er nicht auf die Online-Redo-Logdateien zu, sondern arbeitet nur mit den archivierten Logdateien. Der Zugriff auf archivierte Redo-Logdateien führt zwangsläufig zu einer gewissen Latenz beim Migrationsprozess. Auf dieser Seite wird eine empfohlene Konfiguration für Ihre Oracle-Quelldatenbanken beschrieben, um die Auswirkungen der Latenz zu kontrollieren.
Konfigurationsparameter für Oracle-Wiederherstellungs-Logdateien festlegen
Dieses Design hat erhebliche Auswirkungen auf die potenzielle Latenz des Database Migration Service. Wenn Oracle-Redo-Logdateien häufig gewechselt oder auf eine kleinere Größe begrenzt werden (z. B. auf weniger als 256 MB), kann der Database Migration Service Änderungen schneller replizieren.
Es gibt Konfigurationsparameter, mit denen Sie die Rotationshäufigkeit der Protokolldatei 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 Online-Logdateien 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 der genaue Zeitpunkt des Protokollwechsels, da berücksichtigt wird, wie lange das Archivieren des Protokolls dauert. Der Standardwert ist
0
(keine Obergrenze). Wir empfehlen einen angemessenen Wert von1800
(30 Minuten) oder weniger.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;
Mit diesem Befehl wird angezeigt, wie viele Sekunden es dauert, bis das aktuelle Protokoll voll ist.ALTER SYSTEM SET ARCHIVE_LAG_TARGET = number-of-seconds;
Mit diesem Befehl können Sie die Obergrenze ä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.