MySQL ist eines der beliebtesten relationalen Datenbankverwaltungssysteme, aber ein einzelner MySQL-Server weist Leistungsengpässe und Zuverlässigkeitsprobleme auf. Um den Anforderungen hoher Last und hoher Zuverlässigkeit gerecht zu werden, können MySQL-Cluster zur Lösung dieser Probleme verwendet werden.
MySQL-Cluster ist eine Möglichkeit für mehrere MySQL-Server-Instanzen, auf physischen oder virtuellen Geräten zusammenzuarbeiten und zu laufen, wodurch hohe Leistung und Zuverlässigkeit durch Lastverteilung und verbesserte Verfügbarkeit gewährleistet werden. In diesem Artikel wird erläutert, wie Sie einen MySQL-Cluster erstellen.
1. MySQL-Cluster-Komponenten
MySQL-Cluster besteht hauptsächlich aus den folgenden Komponenten:
2. Aufbau des MySQL-Clusters
Bevor Sie beginnen, stellen Sie sicher, dass MySQL Server installiert und konfiguriert wurde und mehrere Computerknoten bereit sind. Der Einfachheit halber wird im folgenden Beispiel ein MySQL-Cluster mit 3 MySQL-Serverknoten und 2 Verwaltungsknoten konfiguriert. Auf jedem Knoten ist MySQL Server 8.0.25 installiert und das Betriebssystem CentOS 8 wird verwendet.
Da MySQL Cluster Manager (MCM) ein wichtiger Bestandteil der Konfiguration und Verwaltung von MySQL-Clustern ist, muss MCM zuerst auf jedem Knoten installiert werden. MCM kann von der offiziellen MySQL-Website heruntergeladen werden.
Führen Sie nach dem Herunterladen den folgenden Befehl zur Installation aus:
sudo rpm -ivh mysql-cluster-manager-1.4.10-linux-glibc2.12-x86_64.rpm
Nach der Installation von MCM , Eine Erstkonfiguration ist erforderlich. Tun Sie dies auf einem der Knoten. Dieser Knoten wird zum Verwaltungsknoten.
Führen Sie den folgenden Befehl aus, um MCM zu initialisieren:
sudo /opt/mysql/mcm/bin/setup --config-file=/etc/mysql/mcm.ini --yes
Dieser Befehl erstellt /etc/mysql /mcm .ini-Datei und initialisieren Sie MCM gemäß den Standardeinstellungen im Standalone-Modus. Wenn Sie mehr als einen Knoten in Ihrem Cluster verwenden müssen, können Sie in dieser Datei weitere Knoten hinzufügen.
Zuerst müssen Sie den MySQL-Community-Server auf allen Knoten installieren und dann den MySQL-Dienst stoppen.
Als nächstes erstellen Sie ein neues MySQL-Server-Beispiel, damit es als Datenknoten verwendet werden kann. Diese neue Instanz kann aus einer vorhandenen MySQL-Installation erstellt werden. In diesem Beispiel können Sie Version 8.0.25 verwenden, um mit dem folgenden Befehl eine neue MySQL Server-Instanz zu erstellen:
sudo /usr/sbin/mysqld --defaults-file=/etc/my_node1.cnf --initialize-insecure - -ignore-builtin-innodb
Dieser Befehl erstellt eine neue MySQL Server-Instanz und erstellt gleichzeitig alle erforderlichen Dateien und Verzeichnisse im Ordner $datadir/mysql-cluster.
Dieser Befehl muss auf allen Datenknoten ausgeführt werden.
Ähnlich wie beim Datenknoten muss für den Verwaltungsknoten eine neue MySQL Server-Instanz konfiguriert werden, um ihn als Verwaltungsknoten verwenden zu können. Führen Sie den folgenden Befehl aus, um eine neue MySQL Server-Instanz zu erstellen:
sudo /usr/sbin/mysqld --defaults-file=/etc/my_mgmt1.cnf --initialize-insecure --ignore-builtin-innodb
Dieser Befehl wird Erstellen Sie eine neue MySQL Server-Instanz und erstellen Sie außerdem alle erforderlichen Dateien und Verzeichnisse im Ordner $datadir/mysql-cluster.
Dieser Befehl muss auf allen Verwaltungsknoten ausgeführt werden.
Da nun alle Vorbereitungen abgeschlossen sind, können Sie MySQL Server-Instanzen nacheinander starten und eine Verbindung zum Cluster herstellen.
Starten Sie zunächst den Verwaltungsknoten und führen Sie dann den folgenden Befehl aus, um den Knoten mit dem MySQL-Cluster zu verbinden:
sudo ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial
Dieser Befehl startet ndb_mgmd Prozess, der lauten wird: Rufen Sie die Konfigurationsdatei ab und verbinden Sie sich als Verwaltungsknoten mit MySQL Cluster. Abschließend wird eine Meldung gedruckt, die bestätigt, dass der Verwaltungsknoten erfolgreich gestartet wurde.
Als nächstes starten Sie alle Datenknoten. Führen Sie den folgenden Befehl auf jedem Knoten aus:
sudo ndbd
Dieser Befehl startet einen ndbd-Prozess, stellt eine Verbindung zum gestarteten Verwaltungsknoten her und tritt dann dem MySQL-Cluster bei. Bei Verwendung mehrerer Datenknoten muss dieser Befehl auf jedem Knoten ausgeführt werden.
Testen Sie abschließend, ob MySQL Cluster normal läuft, indem Sie eine MySQL Server-Instanz als SQL-Knoten starten. In diesem Beispiel können Sie eine MySQL Server-Instanz auf einem Knoten starten und eine Verbindung zum MySQL-Cluster herstellen:
sudo mysqld_safe --defaults-file=/etc/my_sql1.cnf &
mysql -u root
Dieser Befehl startet MySQL Serverinstanz und öffnen Sie den MySQL-Client. Anschließend können Sie verschiedene SQL-Abfragevorgänge ausführen, um zu testen, ob der Cluster ordnungsgemäß funktioniert.
3. Zusammenfassung
Dies ist ein grundlegendes Tutorial zum Aufbau eines MySQL-Clusters. MySQL Cluster kann die Leistung und Zuverlässigkeit verbessern und wird häufig in Anwendungen verwendet, die hohe Lasten bewältigen müssen, wie z. B. Webanwendungen und E-Commerce-Websites. Mit dem MCM-Toolset können Sie MySQL-Cluster einfach konfigurieren, bereitstellen, überwachen und verwalten. Für viele Unternehmen ist die Einrichtung eines MySQL-Clusters ein Muss.
Das obige ist der detaillierte Inhalt vonAufbau eines MySQL-Clusters. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!