Rückverfolgen eines Aurora-DB-Clusters - Amazon Aurora

Rückverfolgen eines Aurora-DB-Clusters

Mit Amazon Aurora MySQL-kompatible Edition können Sie einen DB-Cluster auf einen bestimmten Zeitpunkt zurückverfolgen, ohne die Daten aus einer Sicherung wiederherstellen zu müssen.

Übersicht zur Rückverfolgung

Durch die Rückverfolgung wird der DB-Cluster auf den angegebenen Zeitpunkt "zurückgespult". Die Rückverfolgung ersetzt nicht das Sichern des DB-Clusters, damit dieser mit dem Stand eines bestimmten Zeitpunkts wiederhergestellt werden kann. Gegenüber herkömmlichen Sicherungen und Wiederherstellungen bietet die Rückverfolgung jedoch einige Vorteile:

  • Sie können Fehler einfach rückgängig machen. Wenn Sie versehentlich eine destruktive Aktion ausführen – beispielsweise eine DELETE-Anweisung ohne WHERE-Klausel –, können Sie den DB-Cluster bei minimaler Unterbrechung der Service-Bereitstellung auf den Zeitpunkt vor der destruktiven Aktion rückverfolgen.

  • Sie können einen DB-Cluster schnell rückverfolgen. Das Wiederherstellen eines DB-Clusters auf den Status eines bestimmten Zeitpunkts startet einen neuen DB-Cluster und stellt diesen aus den Sicherungsdaten oder einem DB-Cluster-Snapshot wieder her. Dies kann einige Stunden dauern. Die Rückverfolgung eines DB-Clusters macht keinen neuen DB-Cluster erforderlich. Zudem erfolgt das "Zurückspulen" innerhalb weniger Minuten.

  • Sie können frühere Datenänderungen untersuchen. Sie können einen DB-Cluster mehrfach in der Zeit zurück- und vorspulen, um zu ermitteln, wann eine bestimmte Datenänderung vorgenommen wurde. Sie können beispielsweise einen DB-Cluster drei Stunden zurück und anschließend eine Stunde vorspulen. In diesem Fall liegt der Rückverfolgungszeitpunkt zwei Stunden vor der Originalzeit.

Anmerkung

Weitere Informationen zum Wiederherstellen eines DB-Cluster für einen bestimmten Zeitpunkt finden Sie unter Übersicht über das Sichern und Wiederherstellen eines Aurora-DB-Clusters.

Rückverfolgungsfenster

Für die Rückverfolgung gilt ein Zielfenster für die Rückverfolgung und ein Ist-Rückverfolgungsfenster:

  • Das Zielfenster für die Rückverfolgung gibt den Zeitraum an, über den die Rückverfolgung des DB-Clusters möglich sein soll. Wenn Sie die Rückverfolgung aktivieren, geben Sie ein Zielfenster für die Rückverfolgung an. Sie können beispielsweise ein Zielfenster von 24 Stunden für die Rückverfolgung angeben, wenn die Rückverfolgung des DB-Clusters über einen Tag möglich sein soll.

  • Das tatsächliche Rückverfolgungsfenster bezeichnet den tatsächlichen Zeitraum, über den die Rückverfolgung des DB-Clusters möglich ist. Diese Dauer kann kürzer als die des Zielfensters für die Rückverfolgung sein. Das tatsächliche Rückverfolgungsfenster basiert auf dem Workload und dem für Informationen zu Datenbankänderungen (die sogenannten Änderungsdatensätze) verfügbaren Arbeitsspeicher.

Wenn Sie ein Aurora-DB-Cluster mit aktivierter Rückverfolgung aktualisieren, generieren Sie Änderungsdatensätze. Aurora bewahrt Änderungsdatensätze für das Zielfenster für die Rückverfolgung auf und Sie zahlen für die Speicherung einen Stundensatz. Die Anzahl gespeicherter Änderungsdatensätze hängt vom Zielfenster für die Rückverfolgung und von der Workload auf dem DB-Cluster ab. Die Workload bezeichnet die Anzahl der Änderungen, die Sie in einem gegebenen Zeitraum am DB-Cluster vornehmen. Bei starker Workload werden mehr Änderungsdatensätze im Zielfenster für die Rückverfolgung gespeichert als bei geringerer Workload.

Das Zielfenster für die Rückverfolgung bezeichnet also die maximale Dauer, über die eine Rückverfolgung des DB-Clusters möglich sein soll. In den meisten Fällen ist eine Rückverfolgung über die von Ihnen angegebene Maximaldauer möglich. In einigen Fällen kann der DB-Cluster aber nicht genug Änderungsdatensätze speichern, um eine Rückverfolgung über diese Maximaldauer zu ermöglichen, das Ist-Rückverfolgungsfenster ist in einer solchen Situation kleiner als das Zielfenster. Normalerweise ist das Ist-Rückverfolgungsfenster kleiner als das Zielfenster, wenn die Workload auf dem DB-Cluster extrem hoch ist. Wenn das Ist-Rückverfolgungsfenster kleiner als das Zielfenster ist, senden wir eine Benachrichtigung.

Wenn die Rückverfolgung für einen DB-Cluster aktiviert ist und Sie eine im DB-Cluster gespeicherte Tabelle löschen, bewahrt Aurora die betreffende Tabelle in den Änderungsdatensätzen für die Rückverfolgung auf. Dies ermöglicht Ihnen die Rückkehr zu einem Zeitpunkt vor dem Löschen der Tabelle. Wenn das Zielfenster für die Rückverfolgung nicht genug Platz zum Speichern der Tabelle bietet, wird die Tabelle schließlich aus den Änderungsdatensätzen für die Rückverfolgung entfernt.

Rückverfolgungszeit

Die Rückverfolgung durch Aurora erfolgt immer auf einen Zeitpunkt, der für den DB-Cluster konsistent ist. Dadurch wird das Auftreten noch nicht eingetragener Transaktionen nach Abschluss der Rückverfolgung verhindert. Wenn Sie eine Zeit für eine Rückverfolgung angeben, wählt Aurora automatisch den nächstgelegenen konsistenten Zeitpunkt. Diese Herangehensweise bedeutet, dass die abgeschlossene Rückverfolgung nicht unbedingt exakt dem von Ihnen angegebenen Zeitpunkt entspricht. Sie können die exakte Zeit für eine Rückverfolgung jedoch mit dem AWS-CLI-Befehl describe-db-cluster-backtracks angeben. Weitere Informationen finden Sie unter Abrufen vorhandener Rückverfolgungen.

Einschränkungen der Rückverfolgung

Die folgenden Einschränkungen gelten für die Rückverfolgung:

  • Die Rückverfolgung ist nur für DB-Cluster verfügbar, die mit aktivierter Rückverfolgungsfunktion erstellt wurden. Sie können einen DB-Cluster nicht modifizieren, um die Rückverfolgungsfunktion zu aktivieren. Sie können die Rückverfolgungsfunktion aktivieren, wenn Sie einen neuen DB-Cluster erstellen oder einen Snapshot eines DB-Clusters wiederherstellen.

  • Die Obergrenze für das Zielfenster für die Rückverfolgung beträgt 72 Stunden.

  • Die Rückverfolgung betrifft den gesamten DB-Cluster. Sie können also beispielsweise nicht eine einzelne Tabelle oder eine einzelne Datenaktualisierung verfolgen.

  • Sie können keine regionsübergreifenden Read Replicas aus einem Cluster mit Rückverfolgungsmöglichkeit erstellen, aber Sie können trotzdem die Replikation von Binärprotokollen (Binlog) auf dem Cluster aktivieren. Wenn Sie versuchen, einen DB-Cluster mit aktivierter Binärprotokollierung rückzuverfolgen, tritt üblicherweise ein Fehler auf, sofern die Rückverfolgung nicht erzwungen wird. Jeder Versuch, eine Rückverfolgung zu erzwingen, unterbricht nachgelagerte Read Replicas und beeinträchtigt andere Operationen, wie z. B. Blau/Grün-Bereitstellungen.

  • Sie können einen Datenbankklon nicht auf einen Zeitpunkt zurückverfolgen, der vor der Erstellung des Datenbankklons liegt. Sie können aber die ursprüngliche Datenbank auf einen Zeitpunkt vor der Erstellung des Klons zurückverfolgen. Weitere Informationen zum Klonen von Datenbanken erhalten Sie unter Klonen eines Volumes für einen Amazon-Aurora-DB-Cluster.

  • Bei der Rückverfolgung kommt es zu einer kurzen Betriebsunterbrechung der DB-Instance. Sie müssen Anwendungen vor dem Starten einer Rückverfolgung stoppen oder anhalten, um sicherzustellen, dass keine neuen Lese- oder Schreibanforderungen ergehen. Während der Rückverfolgung hält Aurora die Datenbank an, schließt alle offenen Verbindungen und verwirft noch nicht durchgeführte Lese- und Schreibvorgänge. Dann wird der Abschluss der Rückverfolgung abgewartet.

  • Sie können keinen bereichsübergreifenden Snapshot eines rückverfolgungsfähigen Clusters in einer AWS-Region wiederherstellen, die die Rückverfolgung nicht unterstützt.

  • Wenn Sie ein direktes Upgrade für einen Cluster mit Rückverfolgungsmöglichkeit von Aurora MySQL Version 2 auf Version 3 durchführen, können Sie nicht auf einen Zeitpunkt vor der Durchführung des Upgrades zurückgehen.

Verfügbarkeit von Regionen und Versionen

Die Rückverfolgung ist für Aurora PostgreSQL nicht verfügbar.

Im Folgenden sind die unterstützten Engines und die Regionsverfügbarkeit für die Rückverfolgung mit Aurora MySQL aufgeführt.

Region Aurora-MySQL-Version 3 Aurora-MySQL-Version 2
USA Ost (Nord-Virginia) Alle Versionen Alle Versionen
USA Ost (Ohio) Alle Versionen Alle Versionen
USA West (Nordkalifornien) Alle Versionen Alle Versionen
USA West (Oregon) Alle Versionen Alle Versionen
Africa (Cape Town)
Asien-Pazifik (Hongkong)
Asien-Pazifik (Jakarta)
Asien-Pazifik (Malaysia)
Asien-Pazifik (Melbourne)
Asia Pacific (Mumbai) Alle Versionen Alle Versionen
Asien-Pazifik (Osaka) Alle Versionen Version 2.07.3 und höher
Asien-Pazifik (Seoul) Alle Versionen Alle Versionen
Asien-Pazifik (Singapur) Alle Versionen Alle Versionen
Asien-Pazifik (Sydney) Alle Versionen Alle Versionen
Asien-Pazifik (Tokio) Alle Versionen Alle Versionen
Canada (Central) Alle Versionen Alle Versionen
Kanada West (Calgary)
China (Peking)
China (Ningxia)
Europe (Frankfurt) Alle Versionen Alle Versionen
Europa (Irland) Alle Versionen Alle Versionen
Europa (London) Alle Versionen Alle Versionen
Europa (Mailand)
Europe (Paris) Alle Versionen Alle Versionen
Europa (Spanien)
Europa (Stockholm)
Europa (Zürich)
Israel (Tel Aviv)
Naher Osten (Bahrain)
Naher Osten (VAE)
Südamerika (São Paulo)
AWS GovCloud (USA-Ost)
AWS GovCloud (USA-West)

Überlegungen zum Upgrade für rückverfolgungsfähige Cluster

Sie können ein Upgrade für einen DB-Cluster mit Rückverfolgungsmöglichkeit von Aurora MySQL Version 2 auf Version 3 durchführen, da alle Nebenversionen von Aurora MySQL Version 3 für die Rückverfolgung unterstützt werden.

Abonnieren eines Rückverfolgungsereignisses mit der Konsole

Das folgende Verfahren beschreibt, wie Sie ein Rückverfolgungsereignis mit der Konsole abonnieren. Das Ereignis sendet eine E-Mail oder SMS, wenn das Ist-Rückverfolgungsfenster kürzer als das Zielfenster für die Rückverfolgung ist.

Zeigen Sie Rückverfolgungsinformationen mit der Konsole wie folgt an:
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie Event subscriptions (Ereignisabonnements) aus.

  3. Wählen Sie Create event subscription (Ereignisabonnement erstellen) aus.

  4. Geben Sie in das Feld Name (Name) einen Namen für das Ereignisabonnement ein und stellen Sie sicher, dass für Enabled (Aktiviert) der Wert Yes (Ja) ausgewählt ist.

  5. Wählen Sie im Bereich Target (Ziel) die Option New email topic (Neues E-Mail-Thema) aus.

  6. Geben Sie unter Topic name (Themenname) einen Namen für das Thema und unter With these recipients (Mit diesen Empfängern) die E-Mail-Adressen oder Telefonnummern der Benachrichtigungsempfänger ein.

  7. Wählen Sie im Bereich Source (Quelle) für Source type (Quellentyp) den Wert Instances (Instances) aus.

  8. Wählen Sie für Instances to include (Einzuschließende Instances) den Wert Select specific instances (Bestimmte Instances auswählen) und dann die DB-Instance aus.

  9. Wählen Sie für Event categories to include (Einzuschließende Ereigniskategorien) den Wert Select specific event categories (Bestimmte Ereigniskategorien auswählen) und dann Backtrack (Rückverfolgen) aus.

    Die Seite sollte der folgenden Seite ähneln.

    Rückverfolgungsereignis-Abonnement
  10. Wählen Sie Create aus.

Abrufen vorhandener Rückverfolgungen

Sie können Informationen über existierende Rückverfolgungen für einen DB-Cluster abrufen. Zu diesen Informationen gehören die eindeutige ID der Rückverfolgung, Ausgangs- und Zielzeitpunkt der Rückverfolgung, Datum und Zeitpunkt der Anforderung der Rückverfolgung und der aktuelle Status der Rückverfolgung.

Anmerkung

Derzeit können vorhandene Rückverfolgungen nicht mit der Konsole abgerufen werden.

Das folgende Verfahren beschreibt, wie Sie vorhandene Rückverfolgungen für einen DB-Cluster mit der abrufe AWS CLI.

Rufen Sie vorhandene Rückverfolgungen mit der wie folgt ab AWS CLI
  • Rufen Sie den AWS-CLI-Befehl describe-db-cluster-backtracks auf und stellen Sie die folgenden Werte bereit:

    • --db-cluster-identifier: Name des DB-Clusters.

    Im folgenden Beispiel werden die für vorhandenen Rückverfolgungen abgerufe sample-cluster.

    Für Linux, macOS oder Unix:

    aws rds describe-db-cluster-backtracks \ --db-cluster-identifier sample-cluster

    Für Windows:

    aws rds describe-db-cluster-backtracks ^ --db-cluster-identifier sample-cluster

Um Informationen zu den Rückverfolgungen für einen DB-Cluster über die Amazon-RDS-API abzurufen, verwenden Sie die Aktion DescribeDBClusterBacktracks. Diese Operation gibt Informationen über Rückverfolgungen für den mit dem Wert DBClusterIdentifier angegebenen DB-Cluster zurück.