Direkt zum Inhalt

Wann sollte ich meine AWS-DMS-Aufgabe, die sich im Status „Stopped“ oder „Failed“ befindet, neu starten und fortsetzen?

Lesedauer: 5 Minute
0

Ich habe eine AWS Database Migration Service (AWS DMS)-Aufgabe, die sich im Status „Stopped“ oder „Failed“ befindet. Wann sollte ich meine AWS-DMS-Aufgabe fortsetzen oder neu starten, um die Replikation fortzusetzen?

Kurzbeschreibung

Wenn sich deine AWS-DMS-Aufgabe im Status „Stopped“ oder „Failed“ befindet, hast du zwei Möglichkeiten, die Replikation fortzusetzen:

  • Fortsetzen – Wenn du eine Aufgabe fortsetzt, setzt AWS DMS die Replikation ab dem letzten Punkt fort, bevor die Aufgabe beendet wurde oder fehlgeschlagen ist.
  • Neustart – Wenn du eine Aufgabe neu startest, beginnt AWS DMS die Replikation von Anfang an und verwendet den Vorbereitungsmodus für die Tabelle, den du bei der Erstellung der Aufgabe ausgewählt hast. Zu den Vorbereitungsmodi für die Tabelle gehören beispielsweise „Drop table on target“, „Truncate“ und „Do nothing“. Weitere Informationen findest du unter Volllast-Aufgabeneinstellungen.

Das Verhalten der Aktionen „Fortsetzen“ und „Neustart“ hängt davon ab, welche der drei AWS-DMS-Migrationsmethoden du verwendest. Zu diesen Methoden gehören Volllast-, Volllast- und Änderungsdatenerfassung (CDC) sowie reine CDC-Migration. Weitere Informationen findest du unter Aufgabe erstellen.

Lösung

Bestehende Daten (Volllast) migrieren

Wenn du bei Volllastaufgaben die Aufgabe bei der Aufgabenerstellung manuell startest, verwende anschließend die Neustart-Aktion in der AWS-DMS-Konsole, um die Replikation zu starten. Dadurch werden alle Tabellen der Migration neu geladen.

Du kannst auch die Option ](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.ReloadTables.html)Tabellendaten neu laden[ verwenden, um bestimmte Tabellen neu zu laden, die bei der Migration fehlgeschlagen sind. Das bedeutet, dass Tabellen, die bereits geladen sind, nicht noch einmal geladen werden müssen, und dass Tabellen, deren Ladevorgang noch nicht abgeschlossen ist, erneut geladen werden.

Wenn du bei der Migration mehrerer Tabellen die Option „Fortsetzen“ verwendest, beginnen die Tabellen, die nicht vollständig abgeschlossen wurden, von vorne. Tabellen, die die Migration abgeschlossen haben, sind nicht betroffen. Wenn du eine einzelne Tabelle migrierst, ist es am besten, die Aufgabe neu zu starten, anstatt die Option „Fortsetzen“ zu verwenden.

Bestehende Daten migrieren und laufende Änderungen (Volllast und CDC) replizieren

Wenn du eine Volllast- und CDC-Aufgabe verwendest, migriert AWS DMS Tabellendaten und wendet dann Datenänderungen an, die in der Quelle auftreten. Wenn du die Aufgabe neu startest, werden alle Tabellen erneut geladen und die Quelländerungen ab dem Zeitpunkt des Neustarts erfasst. Wenn deine Aufgabe mit dem Vorbereitungsmodus „Do nothing“ konfiguriert ist, leere die Zieltabellen manuell, bevor du die Aufgabe neu startest.

Wenn du die Aufgabe fortsetzt, werden nur Änderungen, die nach dem letzten Haltepunkt erfasst wurden, auf die Datenbank angewendet. Wenn die Migrationsaufgabe während der CDC-Phase beendet wird, speichert AWS DMS die Checkpoint-Informationen für die zukünftige Verwendung. Du kannst den Aufgaben-Checkpoint auf der Registerkarte Übersichtsdetails der AWS-DMS-Konsole anzeigen.

Nur Datenänderungen replizieren (nur CDC):

Wenn du eine reine CDC-Aufgabe verwendest, kannst du die Erfassung von Quelldatenänderungen entweder zum aktuellen Zeitpunkt oder zum CDC-Startpunkt beginnen. Wenn du die Aufgabe neu startest, wenn ein CDC-Startpunkt definiert ist, dann lädt der Neuladevorgang alle Änderungen ab diesem Zeitpunkt. Wenn du eine Aufgabe ohne CDC-Startpunkt neu startest, gehen die CDC-Änderungen vom Zeitpunkt des Anhaltens bis zum Neustart der Aufgabe verloren.

Der Fortsetzungsvorgang setzt die Replikation von Änderungen ab dem letzten Haltepunkt fort, unabhängig von der Konfiguration des CDC-Startpunkts. Wenn du eine Aufgabe mit dem Vorbereitungsmodus „Truncate“ für die Zieltabelle neu startest, lässt AWS DMS die vorhandenen Zieltabellen und ihre Metadaten unverändert. Es werden jedoch alle vorhandenen Daten aus diesen Tabellen gelöscht, bevor die Migration erneut gestartet wird.

Übliche Szenarien für das Fortsetzen oder den Neustart einer AWS-DMS-Aufgabe

Im Folgenden findest du einige gängige Beispiele für die Verwendung der Fortsetzungs- oder Neustartvorgänge für deine AWS-DMS-Aufgabe.

AWS-DMS-Aufgabe neustarten:

  • Wenn das Quell-Datenbankmanagementsystem (DBMS) keine Wiederherstellungsprotokolldateien oder Transaktionsprotokolldateien enthält, um den CDC-Prozess fortzusetzen, starte die Aufgabe neu. Durch einen Neustart der Aufgabe werden alle Tabellendaten geladen und die Erfassung von Änderungen fortgesetzt.
  • Wenn sich eine AWS-DMS-Aufgabe im Fehlerstatus befindet, bedeutet dies, dass eine oder mehrere der Tabellen in der Aufgabe nicht migriert werden konnten. Im Fehlerstatus lädt die Aufgabe weiterhin andere Tabellen aus der Auswahlregel, aber eine Aufgabe mit dem Status „Failed“ stoppt mit schwerwiegenden Fehlern. Nachdem du die Fehler behoben hast, lade die Tabellen erneut oder starte die Aufgabe neu, um den Fehlerstatus zu beheben. Weitere Informationen findest du unter Warum befindet sich meine AWS-DMS-Aufgabe in einem Fehlerstatus?
  • Wenn eine Volllast- und CDC-Aufgabe oder eine reine CDC-Aufgabe gestoppt wird, können die Datenänderungen vom Speicher auf die Festplatte übertragen werden. Je nach Umfang der auf die Festplatte ausgelagerten Änderungsdaten kann das Fortsetzen einer Aufgabe sehr lange dauern, um die Replikation fortzusetzen. Der Grund dafür ist, dass AWS DMS länger braucht, um diese Änderungen von der Festplatte zu lesen. Wenn es also möglich ist, starte die Aufgabe neu, um diese Wartezeit zu vermeiden.
  • Wenn du zwischen der Verwendung von Oracle LogMiner und AWS DMS Binary Reader wechselst, stelle sicher, dass du die CDC-Aufgabe neu startest.
    Hinweis: Wenn du nach dem Ändern der CDC-Methode eine reine CDC-Aufgabe neu startest, die mit CDC-Wiederherstellungs-Checkpoint konfiguriert ist, wird möglicherweise ein Fehler ähnlich dem folgenden angezeigt:
    „[SOURCE_CAPTURE ]D: Invalid context provided for the Binary Reader based CDC. Restart task is required.“
    Um diesen Fehler zu beheben, starte die Aufgabe anhand des Zeitstempels im CDC-Startpunkt.

AWS-DMS-Aufgabe fortsetzen:

  • Wenn du eine Aufgabe in eine neue Replikations-Instance verschiebst, nimmst du die Aufgabe wieder auf, um die Replikation von Änderungen ab dem Punkt fortzusetzen, an dem sie zuletzt angehalten wurde.
  • Wenn du deine Quell- oder Zieldatenbanken aktualisieren möchtest, stoppe alle AWS-DMS-Aufgaben, die auf diesen Datenbanken ausgeführt werden. Setze deine Aufgaben fort, wenn die Upgrades abgeschlossen sind.
  • Wenn du vorhast, deine Quell- oder Zieldatenbanken zu aktualisieren, stoppe alle AWS-DMS-Aufgaben, die auf diesen Datenbanken ausgeführt werden. Setze die Aufgaben fort, wenn die Upgrades abgeschlossen sind. Um jedoch ein Versions-Upgrade der PostgreSQL-Engine durchzuführen, darfst du keine Replikations-Slots auf der Instance haben. Lösche also alle Replikations-Slots, bevor du deine Engine aktualisierst, und starte dann die Aufgabe neu, um den Replikations-Slot neu zu erstellen.

Ähnliche Informationen

Quellen für die Datenmigration

Mit einer AWS-DMS-Replikations-Instance arbeiten

Replikations-Instance neu starten

AWS OFFICIALAktualisiert vor 3 Jahren