Skalierung von Lesevorgängen für Ihre My SQL Database mit Amazon Aurora - Amazon Aurora

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.

Skalierung von Lesevorgängen für Ihre My SQL Database mit Amazon Aurora

Sie können Amazon Aurora mit Ihrer My SQL DB-Instance verwenden, um die Vorteile der Leseskalierung von Amazon Aurora zu nutzen und den Lese-Workload für Ihre My SQL DB-Instance zu erweitern. Um Aurora zur Skalierung von Lesevorgängen für Ihre My SQL DB-Instance zu verwenden, erstellen Sie einen Amazon Aurora My SQL DB-Cluster und machen Sie ihn zu einer Read Replica Ihrer My SQL DB-Instance. Dies gilt RDS für eine for My SQL DB-Instance oder eine My SQL Database, die außerhalb von Amazon ausgeführt wirdRDS.

Weitere Informationen zum Erstellen eines Amazon Aurora-DB-Clusters finden Sie unter Erstellen eines Amazon Aurora-DB Clusters.

Beachten Sie beim Einrichten der Replikation zwischen Ihrer My SQL DB-Instance und Ihrem Amazon Aurora Aurora-DB-Cluster unbedingt die folgenden Richtlinien:

  • Verwenden Sie die Amazon Aurora-DB-Cluster-Endpunktadresse, wenn Sie auf Ihren Amazon Aurora My SQL DB-Cluster verweisen. Wenn ein Failover auftritt, verwendet die Aurora Replica, die zur primären Instance für den Aurora My SQL DB-Cluster heraufgestuft wird, weiterhin die DB-Cluster-Endpunktadresse.

  • Bewahren Sie die Binärprotokolle auf Ihrer Schreiber-Instance auf, bis Sie sichergestellt haben, dass sie auf das Aurora Replica angewandet wurden. Durch das Aufbewahren können Sie sicherstellen, dass Sie Ihre Schreiber-Instance im Fall eines Ausfalls wiederherstellen können.

Wichtig

Wenn Sie eine von Ihnen verwaltete Replikation verwenden, sind Sie für die Überwachung und Lösung jeglicher auftretender Probleme bei der Replikation verantwortlich. Weitere Informationen finden Sie unter Diagnose und Lösung bei Verzögerungen zwischen Read Replicas (Lesereplikaten).

Anmerkung

Die zum Starten der Replikation auf einem Aurora My SQL DB-Cluster erforderlichen Berechtigungen sind eingeschränkt und stehen Ihrem RDS Amazon-Master-Benutzer nicht zur Verfügung. Daher müssen Sie die mysql.rds_start_replication Verfahren mysql.rds_set_external_master (Aurora Meine Version 2) SQL oder mysql.rds_set_external_source (Aurora Meine Version 3) SQL und verwenden, um die Replikation zwischen Ihrem Aurora My SQL DB-Cluster und Ihrer My SQL DB-Instance einzurichten.

Starten Sie die Replikation zwischen einer externen Quell-Instance und einem Aurora My SQL DB-Cluster

  1. Machen Sie die My SQL DB-Quell-Instance schreibgeschützt:

    mysql> FLUSH TABLES WITH READ LOCK; mysql> SET GLOBAL read_only = ON;
  2. Führen Sie den SHOW MASTER STATUS Befehl auf der My SQL DB-Quell-Instance aus, um den Binlog-Speicherort zu ermitteln. Sie erhalten eine Ausgabe, ähnlich der im folgenden Beispiel:

    File Position ------------------------------------ mysql-bin-changelog.000031 107 ------------------------------------
  3. Kopieren Sie die Datenbank von der externen My SQL DB-Instance in den Amazon Aurora My SQL DB-Cluster mithilfe vonmysqldump. Bei sehr großen Datenbanken möchten Sie möglicherweise das Verfahren unter Importieren von Daten in eine My SQL - oder MariaDB-DB-Instance mit reduzierter Ausfallzeit im Amazon Relational Database Service Service-Benutzerhandbuch verwenden.

    FürLinux, oder: macOS Unix

    mysqldump \ --databases <database_name> \ --single-transaction \ --compress \ --order-by-primary \ -u local_user \ -p local_password | mysql \ --host aurora_cluster_endpoint_address \ --port 3306 \ -u RDS_user_name \ -p RDS_password

    Windows:

    mysqldump ^ --databases <database_name> ^ --single-transaction ^ --compress ^ --order-by-primary ^ -u local_user ^ -p local_password | mysql ^ --host aurora_cluster_endpoint_address ^ --port 3306 ^ -u RDS_user_name ^ -p RDS_password
    Anmerkung

    Stellen Sie sicher, dass kein Leezeichen zwischen der Option -p und dem eingegebenen Passwort vorhanden ist.

    Verwenden Sie die Optionen --host, --user (-u) --port und -p im Befehl mysql, um den Host-Namen, Benutzernamen, Port und das Passwort für die Verbindung mit Ihrem Aurora-DB-Cluster anzugeben. Der Hostname ist der DNS Name des Amazon Aurora Aurora-DB-Cluster-Endpunkts, zum Beispielmydbcluster.cluster-123456789012.us-east-1.rds.amazonaws.com. Sie finden den Endpunktwert in den Cluster-Details in der Amazon RDS Management Console.

  4. Machen Sie die My SQL DB-Quell-Instance wieder schreibbar:

    mysql> SET GLOBAL read_only = OFF; mysql> UNLOCK TABLES;

    Weitere Informationen zum Erstellen von Backups zur Verwendung bei der Replikation finden Sie Backing up a source or replica by making it read onlyin der SQL Dokumentation „Meine“.

  5. Fügen Sie in der Amazon RDS Management Console die IP-Adresse des Servers, der die Quelle My SQL database hostet, zur VPC Sicherheitsgruppe für den Amazon Aurora Aurora-DB-Cluster hinzu. Weitere Informationen zum Ändern einer VPC Sicherheitsgruppe finden Sie unter Sicherheitsgruppen für Sie VPC im Amazon Virtual Private Cloud Cloud-Benutzerhandbuch.

    Möglicherweise müssen Sie auch Ihr lokales Netzwerk so konfigurieren, dass Verbindungen von der IP-Adresse Ihres Amazon Aurora Aurora-DB-Clusters zugelassen werden, damit es mit Ihrer SQL Quell-Instance kommunizieren kann. Verwenden Sie den Befehl host, um die IP-Adresse des Amazon Aurora-DB-Clusters herauszufinden.

    host aurora_endpoint_address

    Der Hostname ist der DNS Name des Amazon Aurora Aurora-DB-Cluster-Endpunkts.

  6. Stellen Sie mit dem Client Ihrer Wahl eine Verbindung zur externen SQL My-Instance her und erstellen Sie einen SQL My-Benutzer, der für die Replikation verwendet werden soll. Dieses Konto wird ausschließlich für die Replikation verwendet und muss auf Ihre Domäne beschränkt sein, um die Sicherheit zu erhöhen. Im Folgenden wird ein Beispiel gezeigt.

    CREATE USER 'repl_user'@'example.com' IDENTIFIED BY 'password';
  7. Gewähren REPLICATION CLIENT Sie Ihrem Replikationsbenutzer für die externe SQL Instanz Meine REPLICATION SLAVE Rechte. Erteilen Sie beispielsweise die Sonderrechte REPLICATION CLIENT und REPLICATION SLAVE in allen Datenbank für den 'repl_user'-Benutzer für Ihre Domäne, mit dem folgenden Befehl.

    GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO 'repl_user'@'example.com' IDENTIFIED BY 'password';
  8. Erstellen Sie einen manuellen Snapshot des Aurora My SQL DB-Clusters, der als Read Replica dienen soll, bevor Sie die Replikation einrichten. Wenn Sie die Replikation mit dem DB-Cluster als Read Replica erneut einrichten müssen, können Sie den Aurora My SQL DB-Cluster aus diesem Snapshot wiederherstellen, anstatt die Daten aus Ihrer My SQL DB-Instance in einen neuen Aurora My SQL DB-Cluster importieren zu müssen.

  9. Legen Sie das Amazon Aurora-DB-Cluster als Replica fest. Stellen Sie als Master-Benutzer Connect zum Amazon Aurora Aurora-DB-Cluster her und identifizieren Sie mithilfe der mysql.rds_start_replication Verfahren mysql.rds_set_external_master (Aurora Meine Version 2) SQL oder mysql.rds_set_external_source (Aurora Meine Version 3) SQL und die Quelle My SQL database als Replikationsquelle.

    Verwenden Sie den Namen und die Position der Binlog-Datei, die Sie in Schritt 2 festgelegt haben. Im Folgenden wird ein Beispiel gezeigt.

    For Aurora MySQL version 2: CALL mysql.rds_set_external_master ('mymasterserver.example.com', 3306, 'repl_user', 'password', 'mysql-bin-changelog.000031', 107, 0); For Aurora MySQL version 3: CALL mysql.rds_set_external_source ('mymasterserver.example.com', 3306, 'repl_user', 'password', 'mysql-bin-changelog.000031', 107, 0);
  10. Rufen Sie auf dem Amazon-Aurora-DB-Cluster die mysql.rds_start_replication-Prozedur auf, um die Replikation zu starten.

    CALL mysql.rds_start_replication;

Nachdem Sie die Replikation zwischen Ihrer My SQL DB-Quell-Instance und Ihrem Amazon Aurora Aurora-DB-Cluster eingerichtet haben, können Sie Aurora Replicas zu Ihrem Amazon Aurora Aurora-DB-Cluster hinzufügen. Sie können sich anschließend mit dem Aurora Replicas verbinden, um die Lesevorgänge Ihrer Daten zu skalieren. Weitere Informationen über das Erstellen einer Aurora-Replica finden Sie unter Hinzufügen von Aurora-Replicas zu einem DB-Cluster.