Backup und Wiederherstellung für Amazon RDS - AWS Präskriptive Leitlinien

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Backup und Wiederherstellung für Amazon RDS

Amazon RDS enthält Funktionen zur Automatisierung von Datenbank-Backups. Amazon RDS erstellt einen Snapshot für das Speichervolume Ihrer Datenbank-Instance, damit die gesamte DB-Instance gesichert wird und nicht nur nur nur nur nur nur nur nur einzelne Datenbanken. Mit Amazon RDS können Sie ein Backup-Fenster für automatische Backups einrichten, Datenbank-Instanz-Snapshots erstellen und Snapshots regionsübergreifend und kontoübergreifend teilen und kopieren.

Amazon RDS bietet zwei verschiedene Optionen für die Sicherung und Wiederherstellung Ihrer DB-Instances:

  • Automatisierte Backups ermöglichen die point-in-time Wiederherstellung (PITR) Ihrer DB-Instance. Automatisierte Backups sind standardmäßig aktiviert, wenn Sie eine neue DB-Instance erstellen.

    Amazon RDS führt während eines Backup-Fensters, das Sie bei der Erstellung der DB-Instance definieren, täglich eine vollständige Sicherung Ihrer Daten durch. Sie können eine Aufbewahrungsdauer von bis zu 35 Tagen für das automatische Backup konfigurieren. Amazon RDS lädt außerdem die Transaktionsprotokolle für DB-Instances alle 5 Minuten nach Amazon S3 hoch. Amazon RDS verwendet Ihre täglichen Backups zusammen mit Ihren Datenbanktransaktionsprotokollen, um Ihre DB-Instance wiederherzustellen. Sie können die Instance während Ihres Aufbewahrungszeitraums auf jede Sekunde bis zuLatestRestorableTime (in der Regel die letzten fünf Minuten) wiederherstellen.

    Verwenden Sie denDescribeDBInstances API-Aufruf, um die letzte wiederherstellbare Zeit für Ihre DB-Instances zu ermitteln. Oder suchen Sie auf der Registerkarte Beschreibung nach der Datenbank in der Amazon RDS-Konsole.

    Wenn Sie einen PITR initiieren, werden Transaktionsprotokolle mit dem am besten geeigneten täglichen Backup kombiniert, um Ihre DB-Instance zum angeforderten Zeitpunkt wiederherzustellen.

  • -DB-Snapshots sind vom Benutzer initiierte Backups, die Sie zum Wiederherstellen Ihrer DB-Instance auf einen bekannten Zustand verwenden können, so häufig Sie möchten. Sie können diesen Zustand dann jederzeit wiederherstellen. Sie können die Amazon RDS-Konsole oder denCreateDBSnapshot API-Aufruf verwenden, um DB-Snapshots zu erstellen. Diese Snapshots werden so lange aufbewahrt, bis Sie sie mithilfe der Konsole oder desDeleteDBSnapshot API-Aufrufs explizit löschen.

Beide Backup-Optionen werden für Amazon RDS in unterstütztAWS Backup, das auch andere Funktionen bietet. Erwägen SieAWS Backup, einen Standard-Backup-Plan für Ihre Amazon RDS-Datenbanken einzurichten, und verwenden Sie die vom Benutzer initiierten Instanz-Backup-Optionen, wenn Ihre Backup-Pläne für eine bestimmte Datenbank einzigartig sind.

Amazon RDS verhindert den direkten Zugriff auf den zugrunde liegenden Speicher, der von der DB-Instance verwendet wird. Dadurch wird auch verhindert, dass Sie die Datenbank auf einer RDS-DB-Instance direkt auf ihre lokale Festplatte exportieren. In einigen Fällen können Sie native Sicherungs- und Wiederherstellungsfunktionen mithilfe von Client-Dienstprogrammen verwenden. Sie können beispielsweise den Befehl mysqldump mit einer Amazon RDS MySQL-Datenbank verwenden, um eine Datenbank auf Ihren lokalen Client-Computer zu exportieren. In einigen Fällen bietet Amazon RDS auch erweiterte Optionen für die Durchführung einer systemeigenen Sicherung und Wiederherstellung einer Datenbank. Amazon RDS bietet beispielsweise gespeicherte Prozeduren zum Exportieren und Importieren von RDS-Datenbank-Backups von SQL Server-Datenbanken.

Stellen Sie sicher, dass Sie Ihren Datenbankwiederherstellungsprozess und seine Auswirkungen auf die Datenbank-Clients als Teil Ihres allgemeinen Sicherungs- und Wiederherstellungsansatzes gründlich testen.

Verwendung von DNS-CNAME-Einträgen zur Reduzierung der Auswirkungen auf den Client bei einer Datenbankwiederherstellung

Wenn Sie eine Datenbank mithilfe von PITR oder einem RDS-DB-Instance-Snapshot wiederherstellen, wird eine neue DB-Instance mit einem neuen Endpunkt erstellt. Auf diese Weise können Sie mehrere DB-Instances aus einem bestimmten DB-Snapshot oder zu einem bestimmten Zeitpunkt erstellen. Bei der Wiederherstellung einer RDS-DB-Instance, um eine Live-RDS-DB-Instance zu ersetzen, müssen besondere Überlegungen angestellt werden. Sie müssen beispielsweise festlegen, wie Sie Ihre vorhandenen Datenbank-Clients mit minimaler Unterbrechung und Änderung auf die neue Instanz umleiten. Sie müssen auch die Kontinuität und Konsistenz der Daten in der Datenbank sicherstellen, indem Sie die wiederhergestellte Datenzeit und die Wiederherstellungszeit berücksichtigen, zu der die neue Instanz beginnt, Schreibvorgänge zu empfangen.

Sie können einen separaten DNS-CNAME-Eintrag erstellen, der auf Ihren DB-Instance-Endpunkt verweist, und Ihre Kunden diesen DNS-Namen verwenden lassen. Dann können Sie den CNAME so aktualisieren, dass er auf einen neuen, wiederhergestellten Endpunkt verweist, ohne Ihre Datenbank-Clients aktualisieren zu müssen.

Stellen Sie die Gültigkeitsdauer (Time to Live) für Ihren CNAME-Eintrag auf einen entsprechenden Wert. Die von Ihnen angegebene TTL bestimmt, wie lange der Datensatz mit DNS-Resolvern zwischengespeichert wird, bevor eine weitere Anfrage gestellt wird. Es ist wichtig zu beachten, dass einige DNS-Resolver oder -Anwendungen die TTL möglicherweise nicht einhalten und den Datensatz möglicherweise länger als die TTL zwischenspeichern. Wenn Sie eine längere Dauer eingeben (beispielsweise 172 800 Sekunden oder 2 Tage), reduzieren Sie die Anzahl der Aufrufe, die rekursiven DNS-Resolver an Route 53 tätigen müssen, um die neuesten Informationen in diesem Datensatz abzurufen. Dies reduziert die Latenz und reduziert Ihre Rechnung für den Route 53-Dienst. Weitere Informationen finden Sie unter So leitet Amazon Route 53 Datenverkehr an Ihre Domäne weiter.

Anwendungen und Client-Betriebssysteme können auch DNS-Informationen zwischenspeichern, die Sie leeren oder neu starten müssen, um eine neue DNS-Auflösungsanforderung zu initiieren und den aktualisierten CNAME-Datensatz abzurufen.

Wenn Sie eine Datenbankwiederherstellung einleiten und den Traffic auf Ihre wiederhergestellte Instance verlagern, stellen Sie sicher, dass alle Ihre Clients in Ihre wiederhergestellte Instance schreiben und nicht in Ihre vorherige Instance. Ihre Datenarchitektur unterstützt möglicherweise die Wiederherstellung Ihrer Datenbank, die Aktualisierung von DNS, um den Datenverkehr auf Ihre wiederhergestellte Instance zu verlagern, und das anschließende Korrigieren aller Daten, die möglicherweise noch in Ihre vorherige Instance geschrieben wurden. Wenn dies nicht der Fall ist, können Sie Ihre bestehende Instance beenden, bevor Sie den DNS-CNAME-Eintrag aktualisieren. Dann erfolgt der gesamte Zugriff von Ihrer neu wiederhergestellten Instanz aus. Dies kann vorübergehend zu Verbindungsproblemen für einige Ihrer Datenbank-Clients führen, die Sie individuell behandeln können. Um die Auswirkungen auf den Client zu reduzieren, können Sie die Datenbankwiederherstellung während eines Wartungsfensters durchführen.

Schreiben Sie Ihre Anwendungen so, dass sie Datenbankverbindungsfehler mit Wiederholungsversuchen mithilfe des exponentiellen Backoffs ordnungsgemäß behandeln. Auf diese Weise kann Ihre Anwendung wiederhergestellt werden, wenn eine Datenbankverbindung während einer Wiederherstellung nicht verfügbar ist, ohne dass Ihre Anwendung unerwartet abstürzt.

Nachdem Sie den Wiederherstellungsvorgang abgeschlossen haben, können Sie Ihre vorherige Instance in einem gestoppten Zustand belassen. Oder Sie können Sicherheitsgruppenregeln verwenden, um den Datenverkehr auf Ihre vorherige Instance zu beschränken, bis Sie sicher sind, dass er nicht mehr benötigt wird. Beschränken Sie für eine schrittweise Außerbetriebnahme zunächst den Zugriff der Sicherheitsgruppe auf eine laufende Datenbank. Sie können die Instance irgendwann beenden, wenn sie nicht mehr benötigt wird. Erstellen Sie abschließend einen Snapshot der Datenbankinstanz und löschen Sie ihn.