Exportieren von Daten aus einer My SQL DB-Instance mithilfe von Replikation - Amazon Relational Database Service

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.

Exportieren von Daten aus einer My SQL DB-Instance mithilfe von Replikation

Um Daten von einer RDS for My SQL DB-Instance in eine My SQL Instance zu exportieren, die außerhalb von Amazon ausgeführt wirdRDS, können Sie die Replikation verwenden. In diesem Szenario ist die My SQL DB-Instance die My SQL DB-Quell-Instance, und die My SQL Instance, die außerhalb von Amazon ausgeführt wird, RDS ist die externe My SQL Database.

Die externe SQL Datenbank Meine Datenbank kann entweder lokal in Ihrem Rechenzentrum oder auf einer EC2 Amazon-Instance ausgeführt werden. Die externe My SQL Database-Instanz muss dieselbe Version wie die My SQL DB-Quell-Instance oder eine neuere Version ausführen.

Die Replikation auf eine externe My SQL Database wird nur während der Zeit unterstützt, die für den Export einer Datenbank aus der My SQL DB-Quellinstanz benötigt wird. Die Replikation sollte beendet werden, wenn die Daten exportiert wurden und Anwendungen auf die externe My SQL Instance zugreifen können.

Im Folgenden sind die durchzuführenden Schritte aufgeführt. In den folgenden Abschnitten wird jeder Schritt im Detail erklärt.

  1. Bereiten Sie eine externe My SQL DB-Instance vor.

  2. Bereiten Sie die My SQL DB-Quellinstanz für die Replikation vor.

  3. Verwenden Sie das Hilfsprogramm mysqldump, um die Datenbank von der My SQL DB-Quell-Instance auf die externe My Database zu übertragen. SQL

  4. Starten Sie die Replikation zur externen Datenbank Meine Datenbank. SQL

  5. Nachdem der Exportvorgang abgeschlossen ist, stoppt die Replikation.

Bereiten Sie eine externe Datenbank vom Typ Meine SQL Datenbank vor

Führen Sie die folgenden Schritte aus, um die externe SQL Datenbank Meine Datenbank vorzubereiten.

So bereiten Sie die externe SQL Datenbank Meine Datenbank vor
  1. Installieren Sie die externe SQL Datenbank Meine Datenbank.

  2. Stellen Sie als Masterbenutzer eine Connect mit der externen SQL Datenbank Meine Datenbank her. Erstellen Sie dann die Benutzer, die erforderlich sind, um die Administratoren, Anwendungen und Services zu unterstützen, die auf die Datenbank zugreifen.

  3. Folgen Sie den Anweisungen in der SQL Dokumentation Meine, um die externe SQL Datenbank Meine Datenbank als Replikat vorzubereiten. Weitere Informationen finden Sie unter Einstellung der Replikatkonfiguration in der Dokumentation Meine SQL Daten.

  4. Konfigurieren Sie eine Ausgangsregel für die externe Datenbank „Meine SQL Datenbank“, sodass sie während des Exports als Lesereplikat fungiert. Die Ausgangsregel ermöglicht es der externen My SQL Database, während der Replikation eine Verbindung mit der My SQL DB-Quell-Instance herzustellen. Geben Sie eine Ausgangsregel an, die Transmission Control Protocol (TCP) -Verbindungen zum Port und zur IP-Adresse der My SQL DB-Quellinstanz zulässt.

    Geben Sie die entsprechenden Ausgangsregeln für Ihre Umgebung an:

    • Wenn die externe SQL Datenbank Meine Datenbank in einer EC2 Amazon-Instance in einer virtuellen privaten Cloud (VPC) läuft, die auf dem VPC Amazon-Service basiert, geben Sie die Ausgangsregeln in einer VPC Sicherheitsgruppe an. Weitere Informationen finden Sie unter Zugriffskontrolle mit Sicherheitsgruppen.

    • Wenn die externe SQL Datenbank „Meine Datenbank“ lokal installiert ist, geben Sie die Ausgangsregeln in einer Firewall an.

  5. Wenn die externe SQL Datenbank Meine Datenbank in einem ausgeführt wirdVPC, konfigurieren Sie zusätzlich zur VPC Ausgangsregel der Sicherheitsgruppe Regeln für die Zugriffskontrollliste (ACL):

    • Konfigurieren Sie eine ACL Eingangsregel, die den TCP Datenverkehr zu den Ports 1024—65535 von der IP-Adresse der My DB-Quell-Instance aus ermöglicht. SQL

    • Konfigurieren Sie eine ACL Ausgangsregel, die ausgehenden TCP Datenverkehr zum Port und zur IP-Adresse der My DB-Quellinstanz zulässt. SQL

    Weitere Informationen zum VPC Amazon-Netzwerk ACLs finden Sie unter Netzwerk ACLs im VPCAmazon-Benutzerhandbuch.

  6. (Optional) Legen Sie den Parameter max_allowed_packet auf die maximale Größe fest, um Replikationsfehler zu vermeiden. Wir empfehlen diese Einstellung.

Bereiten Sie die My SQL DB-Quell-Instance vor

Führen Sie die folgenden Schritte aus, um die My SQL DB-Quellinstanz als Replikationsquelle vorzubereiten.

So bereiten Sie die My SQL DB-Quell-Instance vor
  1. Stellen Sie sicher, dass Ihr Client-Computer über genügend freien Speicherplatz verfügt, um die Binärprotokolle während des Einrichtens der Replikation zu speichern.

  2. Stellen Sie eine Connect der My SQL DB-Quell-Instance her und erstellen Sie ein Replikationskonto, indem Sie den Anweisungen unter Creating a User for Replication in der SQL Dokumentation My folgen.

  3. Konfigurieren Sie Eingangsregeln auf dem System, auf dem die My SQL DB-Quell-Instance ausgeführt wird, damit die externe My SQL Database während der Replikation eine Verbindung herstellen kann. Geben Sie eine Eingangsregel an, die TCP Verbindungen zu dem von der My SQL DB-Quell-Instance verwendeten Port von der IP-Adresse der externen My SQL database aus ermöglicht.

  4. Geben Sie die Ausgangregeln an:

    • Wenn die My SQL DB-Quell-Instance in einer ausgeführt wirdVPC, geben Sie die Eingangsregeln in einer VPC Sicherheitsgruppe an. Weitere Informationen finden Sie unter Zugriffskontrolle mit Sicherheitsgruppen.

  5. Wenn die Quell-Instance „Meine SQL DB“ in einer ausgeführt wirdVPC, konfigurieren Sie zusätzlich zur Regel für den Zugriff auf Sicherheitsgruppen weitere VPC ACL Regeln:

    • Konfigurieren Sie eine ACL Eingangsregel, um TCP Verbindungen zu dem von der RDS Amazon-Instance verwendeten Port von der IP-Adresse der externen My SQL database aus zuzulassen.

    • Konfigurieren Sie eine ACL Ausgangsregel, um TCP Verbindungen von den Ports 1024—65535 zur IP-Adresse der externen Datenbank Meine Datenbank zuzulassen. SQL

    Weitere Informationen zum VPC Amazon-Netzwerk ACLs finden Sie unter Netzwerk ACLs im VPCAmazon-Benutzerhandbuch.

  6. Stellen Sie sicher, dass der Aufbewahrungszeitraum für Backup auf eine ausreichend lange Dauer eingestellt ist, damit keine Binärprotokolle während des Exportvorgangs bereinigt werden. Wenn Protokolle bereinigt werden, bevor der Exportvorgang abgeschlossen ist, müssen Sie die Replikation von Anfang an neu starten. Weitere Informationen zum Einstellen des Aufbewahrungszeitraums für Backups finden Sie unter Einführung in Backups.

  7. Verwenden Sie die gespeicherte Prozedur mysql.rds_set_configuration, um das Binärprotokoll für den Aufbewahrungszeitraum auf eine ausreichend lange Dauer einzustellen, damit die Binärprotokolle während des Exportvorgangs nicht bereinigt werden. Weitere Informationen finden Sie unter Zugriff auf MySQL-Binärprotokolle.

  8. Erstellen Sie eine RDS Amazon-Read-Replica aus der My SQL DB-Quell-Instance, um weiterhin sicherzustellen, dass die Binärprotokolle der My SQL DB-Quell-Instance nicht gelöscht werden. Weitere Informationen finden Sie unter Erstellen eines Lesereplikats.

  9. Nachdem die Amazon RDS Read Replica erstellt wurde, rufen Sie die mysql.rds_stop_replication gespeicherte Prozedur auf, um den Replikationsvorgang zu beenden. Die My SQL DB-Quell-Instance löscht ihre binären Protokolldateien nicht mehr, sodass sie für den Replikationsprozess verfügbar sind.

  10. (Optional) Legen Sie sowohl den Parameter max_allowed_packet als auch den Parameter slave_max_allowed_packet auf die maximale Größe fest, um Replikationsfehler zu vermeiden. Die maximale Größe für beide Parameter beträgt 1 GB. Wir empfehlen diese Einstellung für beide Parameter. Weitere Informationen zum Festlegen von Parametern finden Sie unter Ändern von Parametern in einer DB-Parametergruppe in Amazon RDS.

Kopieren der Datenbank

Führen Sie die folgenden Schritte aus, um die Datenbank zu kopieren.

So kopieren Sie die Datenbank:
  1. Connect zur RDS Read Replica der My SQL DB-Quell-Instance her und führen Sie die SQL SHOW REPLICA STATUS\G My-Anweisung aus. Beachten Sie die Werte für Folgendes:

    • Master_Host

    • Master_Port

    • Master_Log_File

    • Exec_Master_Log_Pos

    Anmerkung

    Frühere Versionen von My SQL wurden SHOW SLAVE STATUS anstelle von SHOW REPLICA STATUS verwendet. Wenn Sie eine SQL Version von My vor 8.0.23 verwenden, verwenden Sie. SHOW SLAVE STATUS

  2. Verwenden Sie das Hilfsprogramm mysqldump, um einen Snapshot zu erstellen, der die Daten von Amazon RDS auf Ihren lokalen Client-Computer kopiert. Stellen Sie sicher, dass Ihr Client-Computer ausreichend Speicherplatz zur Verfügung hat, um die zu replizierenden mysqldump-Dateien aus den Datenbanken zu speichern. Dieser Vorgang kann für große Datenbanken einige Stunden in Anspruch nehmen. Folgen Sie den Anweisungen unter Erstellen eines Daten-Snapshots mithilfe von mysqldump in der Dokumentation „Meine“. SQL

    Im folgenden Beispiel wird mysqldump auf einem Client ausgeführt und schreibt das Dump in eine Datei.

    Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:

    mysqldump -h source_MySQL_DB_instance_endpoint \ -u user \ -ppassword \ --port=3306 \ --single-transaction \ --routines \ --triggers \ --databases database database2 > path/rds-dump.sql

    Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:

    mysqldump -h source_MySQL_DB_instance_endpoint ^ -u user ^ -ppassword ^ --port=3306 ^ --single-transaction ^ --routines ^ --triggers ^ --databases database database2 > path\rds-dump.sql

    Sie können die Sicherungsdatei in die externe SQL Datenbank Meine Datenbank laden. Weitere Informationen finden Sie unter Backups im SQL -Format Reloading in der Dokumentation MySQL. Sie können ein anderes Hilfsprogramm ausführen, um die Daten in die externe Datenbank Meine SQL Datenbank zu laden.

Abschließen des Exportvorgangs

Führen Sie die folgenden Schritte aus, um den Export abzuschließen.

So schließen Sie den Export ab:
  1. Verwenden Sie die SQL CHANGE MASTER Anweisung My, um die externe SQL Datenbank My zu konfigurieren. Geben Sie die ID und das Passwort des Benutzers an, dem REPLICATION SLAVE-Berechtigungen erteilt wurden. Geben Sie die Exec_Master_Log_Pos Werte Master_HostMaster_Port,Relay_Master_Log_File, und an, die Sie aus der SQL SHOW REPLICA STATUS\G My-Anweisung erhalten haben, die Sie auf der RDS Read Replica ausgeführt haben. Weitere Informationen finden Sie in der SQL Dokumentation CHANGEMASTERzu My unter TO Statement.

    Anmerkung

    Frühere Versionen von My SQL wurden SHOW SLAVE STATUS anstelle von verwendetSHOW REPLICA STATUS. Wenn Sie eine SQL Version von My vor 8.0.23 verwenden, verwenden Sie. SHOW SLAVE STATUS

  2. Verwenden Sie den SQL START REPLICA Befehl My, um die Replikation von der My SQL DB-Quell-Instance zur externen My SQL Database zu initiieren.

    Dadurch wird die Replikation von der My SQL DB-Quell-Instance gestartet und alle Quelländerungen exportiert, die nach dem Beenden der Replikation von der Amazon RDS Read Replica vorgenommen wurden.

    Anmerkung

    Frühere Versionen von My SQL wurden START SLAVE anstelle von START REPLICA verwendet. Wenn Sie eine SQL Version von My vor 8.0.23 verwenden, verwenden Sie. START SLAVE

  3. Führen Sie den SQL SHOW REPLICA STATUS\G Befehl My für die externe SQL Datenbank Meine Datenbank aus, um zu überprüfen, ob sie als Read Replica funktioniert. Weitere Informationen zur Interpretation der Ergebnisse finden Sie unter SHOWSLAVE| REPLICA STATUS Statement in der SQL Dokumentation My.

  4. Nachdem die Replikation auf der externen My SQL Database-Instance die My SQL DB-Quell-Instance eingeholt hat, verwenden Sie den SQL STOP REPLICA Befehl My, um die Replikation von der My SQL DB-Quell-Instance aus zu beenden.

    Anmerkung

    Frühere Versionen von My SQL wurden STOP SLAVE anstelle von verwendetSTOP REPLICA. Wenn Sie eine SQL Version von My vor 8.0.23 verwenden, verwenden Sie. STOP SLAVE

  5. Rufen Sie auf der Amazon RDS Read Replica die mysql.rds_start_replication gespeicherte Prozedur auf. Auf diese Weise kann Amazon RDS damit beginnen, die binären Protokolldateien aus der My SQL DB-Quell-Instance zu löschen.