Schnelles Klonen von Datenbanken und Rückverfolgung zur Beschleunigung der Anwendungsentwicklung
mit Amazon Aurora
Amazon Aurora ist eine MySQL- und PostgreSQL-kompatible relationale Datenbank, die die Leistung und Verfügbarkeit herkömmlicher Unternehmensdatenbanken mit der Einfachheit und Kosteneffizienz von Open-Source-Datenbanken kombiniert. In diesem Tutorial erfahren Sie, wie Sie einen Aurora DB-Cluster für die Entwicklung und Tests klonen und wie Sie die Rückverfolgung aktivieren und verwenden, um den DB-Cluster auf die von Ihnen angegebene Zeit "zurückzuspulen".
Das Klonen eines Aurora-Clusters ist extrem hilfreich, wenn Sie bewerten möchten, welche Auswirkungen Änderungen an Ihrer Datenbank haben, oder wenn Sie arbeitsintensive Vorgänge wie das Exportieren von Daten oder Ausführen von Analyseabfragen durchführen oder einfach eine Kopie Ihrer Produktionsdatenbank in einer Entwicklungs- oder Testumgebung verwenden möchten. Sie können mehrere Klone Ihres Aurora-DB-Clusters erstellen. Sie können sogar zusätzliche Klone aus anderen Klonen erstellen, unter der Bedingung, dass die Klondatenbanken in derselben Region wie die Quelldatenbanken erstellt werden.
Durch Rückverfolgung können Sie den Aurora-DB-Cluster auf die von Ihnen angegebene Zeit "zurückspulen". Bei aktivierter Rückverfolgung speichert Aurora die Änderungen an Ihrer Datenbank und ermöglicht Ihnen, zu einem vorherigen konsistenten Zustand zurückzukehren. Mit dieser Funktion können Sie Fehler leicht rückgängig machen. Wenn Sie beispielsweise aus Versehen eine destruktive Aktion wie ein DELETE ohne WHERE-Klausel durchgeführt haben, können Sie schnell zu einem Zustand vor dem Versehen zurückkehren. Im Gegensatz zur Wiederherstellung anhand eines Snapshots oder zu einer automatisierten Sicherung, die längere Zeit in Anspruch nehmen, können Sie mit der Rückverfolgung innerhalb von Minuten zwischen Zuständen wechseln.
In diesem Tutorial erstellen Sie einen Aurora-DB-Cluster mit aktivierter Rückverfolgung. Sie fügen Daten zum Cluster hinzu und wechseln dann mithilfe der Rückverfolgungsfunktion zwischen verschiedenen Zeitpunkten hin und her. Anschließend klonen Sie die Datenbank und führen Abfragen für die Kopie durch.
Dieses Tutorial befindet sich nicht innerhalb des kostenlosen Kontingents und kostet weniger als 1 USD, sofern Sie die Schritte im Tutorial befolgen und Ihre Ressourcen am Ende des Lernprogramms beenden.
Voraussetzungen
Sie müssen sich mit der Datenbank verbinden und Befehle für sie ausführen können. Wir empfehlen, DB-Clustern keine öffentlichen IP-Adressen zuzuweisen. Deshalb benötigen Sie wahrscheinlich eine EC2-Instance in derselben VPC wie das DB-Cluster. Wenn Sie noch keine solche ausführen, können Sie mit den hier beschriebenen Schritten eine bereitstellen.
Dann können Sie einen MySQL-Client installieren, indem Sie sudo yum install mysql ausführen.
Über dieses Tutorial | |
---|---|
Zeit | 10-20 Minuten |
Kosten | Weniger als 1 USD |
Anwendungsfall | Datenbanken |
Produkte | Amazon Aurora, Amazon RDS |
Zielgruppe | Datenbankadministratoren, Entwickler |
Level | Fortgeschritten |
Letzte Aktualisierung | 17. Juli 2019 |
Schritt 1: Erstellen eines Aurora DB-Clusters
1.1: Öffnen Sie einen Browser und navigieren Sie zur Amazon RDS-Konsole. Wenn Sie bereits über ein AWS-Konto verfügen, melden Sie sich bei der Konsole an. Erstellen Sie andernfalls ein neues AWS-Konto, um loszulegen.
Sie haben bereits ein Konto? Melden Sie sich bei Ihrem Konto an.
1.6: Wählen Sie bei "Version" die neueste Aurora-Version aus, die mit MySQL 5.6 kompatibel ist. Das ist wichtig, weil die Rückverfolgung nur für diese Version verfügbar ist.
DB-Instance-Größe
1.11: Wählen Sie für die DB-Instance-Größe eine große Instance aus (die mit .large endet).
Konnektivität
1.13: Wählen Sie die VPC aus, in der Sie die Datenbank erstellen möchten.
Beachten Sie, dass eine einmal erstellte Datenbank nicht mehr auf eine andere VPC migriert werden kann.
1.16: Wählen Sie unter "Öffentlich zugänglich" die Option "Nein".
Dies bedeutet, dass Sie von einer EC2-Instance innerhalb derselben VPC aus eine Verbindung zur Datenbank herstellen müssen.
1.17: Wählen Sie bei "VPC-Sicherheitsgruppe" die Option "Neu erstellen" aus. Wenn Sie zufällig eine Sicherheitsgruppe haben, die eingehende TCP-Verbindungen an Port 3306 zulässt, können Sie diese stattdessen auswählen.
1.20: Geben Sie bei "Zielfenster für Rückverfolgung" 24 ein. Mit dem Rückverfolgungsfenster wird festgelegt, wie weit Sie im zeitlichen Verlauf zurückgehen können. Aurora wird dann versuchen, genügend Protokollinformationen zu speichern, um dieses Zeitfenster zu unterstützen.
1.21: Deaktivieren Sie unter "Löschschutz" die Option "Löschschutz aktivieren".
Die bewährte Methode ist die Aktivierung des Löschschutzes, aber wenn Sie die Datenbank am Ende des Tutorials löschen möchten, können Sie die Option deaktiviert lassen.
Überprüfen und erstellen
Nach einer kurzen Überprüfung aller Felder des Formulars können Sie fortfahren.
1.22: Klicken Sie auf „Datenbank erstellen“.
Während der Erstellung der Instances wird ein Banner angezeigt, in dem erläutert wird, wie Sie Ihre Anmeldeinformationen erhalten. Dies ist eine gute Gelegenheit, die Anmeldeinformationen abzuspeichern, da Sie das Passwort nur dieses eine Mal anzeigen können.
1.23: Klicken Sie auf „Anmeldedaten anzeigen“.
Schritt 2: Füllen der Datenbank
Öffnen Sie ein Terminalfenster, melden Sie sich bei Ihrer Anwendungs-Instance an und verwenden Sie den MySQL-Befehlszeilenclient, um sich mit Ihrem Aurora-DB-Cluster zu verbinden. Sie können dann eine Datenbank und eine Tabelle erstellen sowie einige Datensätze schreiben.
2.1: Stellen Sie eine Verbindung zu Ihrer Primärdatenbank her:
$ mysql -h endpoint -P 3306 -u admin -p
Wann immer "endpoint" in einem Befehl enthalten ist, müssen Sie den Endpunkt-Hostnamen eingeben, den Sie in Schritt 1.24 gespeichert haben.
Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie das Passwort ein, das Sie in Schritt 1.24 gespeichert haben.
2.2: Erstellen Sie eine Datenbank und schreiben Sie einige Daten.
mysql> CREATE database tutorial;
Query OK, 1 row affected (0.01 sec)
Nun können Sie die Tutorial-Datenbank verwenden, Tabellen erstellen und einige Datensätze hinzufügen.
Schritt 3: Rückverfolgen der Datenbank
Rückverfolgen des DB-Clusters
3.3: Wählen Sie ein Datum und eine Uhrzeit aus. Aurora "spult" den DB-Cluster dann auf den festgelegten Zeitpunkt zurück, ohne einen neuen DB-Cluster zu erstellen. Sie können eine Uhrzeit auswählen, die vor der Erstellung einer Datenbank oder Tabelle liegt.
3.4: Klicken Sie auf "DB-Cluster rückverfolgen".
Ein Bildschirm mit einem blauen Banner wird angezeigt, in dem erläutert wird, dass ein Rückverfolgungsvorgang läuft.
Nach einer Weile erscheint ein grünes Banner, was anzeigt, dass der Rückverfolgungsvorgang abgeschlossen ist.
Jetzt können Sie sich mit der Datenbank verbinden, wie Sie es in Schritt 2 getan haben, und verifizieren, dass die Datenbank zu einem früheren Zustand zurückgekehrt ist. Sie können den Rückverfolgungsvorgang wiederholen und sich im zeitlichen Verlauf vorwärts bewegen.
Schritt 4: Klonen der Datenbank
Alle Bearbeitungen, die Sie an diesem Klon vornehmen, wirken sich nicht auf das Original-DB-Cluster aus. Klicken Sie auf den Namen des geklonten Clusters, um die Endpunkte der geklonten DB und dessen Replikat zu erhalten.
Die Endpunkte werden im Bereich "Endpunkte" angezeigt:
Jetzt können Sie sich mit Ihrer geklonten Datenbank verbinden, wie Sie es in Schritt 2 getan haben, und verifizieren, dass die Datenbank identisch mit der geklonten Datenbank ist: Prüfen Sie die von Ihnen erstellten Datenbanken, Tabellen, Benutzer und Datensätze und vergewissern Sie sich, dass sie in der geklonten Datenbank enthalten sind. Sie können den Klon ändern und damit experimentieren. Wenn Sie die ursprüngliche Datenbank überprüfen, werden Sie sehen, dass diese davon nicht beeinflusst wird.
Schritt 5: Löschen des Clusters
Zum Abschluss dieses Tutorials erfahren Sie, wie Sie Ihren Aurora DB-Cluster löschen können, wenn er nicht mehr benötigt wird. Um Ihren Aurora DB-Cluster zu löschen, rufen Sie das RDS-Dashboard auf und befolgen Sie die folgenden Anweisungen:
5.1: Wählen Sie im linken Bereich „Datenbanken“ aus.
Hier finden Sie eine Liste aller Ihrer Aurora-DB-Cluster. Löschen Sie zuerst die geklonte Datenbank.
5.3: Klicken Sie auf "Aktionen" und wählen Sie "Löschen" aus.
Sie werden gefragt, ob Sie eine abschließende Sicherung erstellen möchten. Dies wird normalerweise empfohlen, ist jedoch für dieses Tutorial nicht notwendig.
5.4: Deaktivieren Sie die Option "Abschließenden Snapshot erstellen" und aktivieren Sie "Ich bestätige …".
5.6: Wählen Sie die Leser-Instance des Aurora DB-Clusters aus, die Sie für dieses Tutorial erstellt haben.
5.8: Sie werden aufgefordert, die Aktion zu bestätigen. Geben Sie "Mich löschen" ein und klicken Sie auf "Löschen".
5.9: Wählen Sie die Schreiber-Instance des Aurora DB-Clusters aus, die Sie für dieses Tutorial erstellt haben.
5.10: Klicken Sie auf "Aktionen" und wählen Sie "Löschen" aus.
Sie werden gefragt, ob Sie eine abschließende Sicherung erstellen möchten. Dies wird normalerweise empfohlen, ist jedoch für dieses Tutorial nicht notwendig.
5.11: Deaktivieren Sie die Option "Abschließenden Snapshot erstellen" und aktivieren Sie "Ich bestätige …".
Herzlichen Glückwunsch!
Sie haben ein Aurora DB-Cluster mit aktivierter Rückverfolgung erstellt. Sie haben gelernt, den Zeitraum zu konfigurieren, in dem Sie sich mit der Datenbank vor- und zurückbewegen können. Schließlich haben Sie gelernt, wie ein Aurora-DB-Cluster geklont wird.
Empfohlene nächste Schritte
Die Dokumentation lesen
In der Dokumentation erfahren Sie mehr über das Rückverfolgen und Klonen von Aurora-DB-Clustern.