Heim  >  Artikel  >  Datenbank  >  Aufbau eines MySQL-Clusters

Aufbau eines MySQL-Clusters

王林
王林Original
2023-05-20 11:03:108312Durchsuche

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:

  1. MySQL-Server: MySQL-Server im Cluster können unterschiedliche Versionen und Konfigurationen haben. Jede MySQL Server-Instanz läuft auf einem anderen physischen oder virtuellen Gerät.
  2. MySQL Cluster Manager (MCM): Ein Toolset zur Verwaltung von MySQL Server-Instanzen in MySQL-Clustern. Mit Hilfe von MCM können MySQL-Cluster einfach konfiguriert, bereitgestellt, überwacht und verwaltet werden.
  3. Datenknoten: Jeder Datenknoten ist eine MySQL-Server-Instanz, die zum Speichern von Daten und zum Ausführen von Abfragen verwendet wird. MySQL Cluster verwendet die NDB-Speicher-Engine zur Verarbeitung von Speicher- und Festplattendaten.
  4. Verwaltungsknoten: Verwaltungsknoten sind Knoten, die Verwaltungsaufgaben ausführen und die MySQL-Cluster-Konfiguration steuern. Jeder MySQL-Cluster erfordert mindestens einen Verwaltungsknoten.
  5. SQL-Knoten: SQL-Knoten sind Clients, die zur Interaktion mit MySQL Cluster verwendet werden. MySQL Cluster stellt keine vorgefertigten SQL-Knoten bereit. Sie müssen eine MySQL Server-Instanz als SQL-Knoten verwenden.

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.

  1. Installieren Sie MySQL Cluster Manager

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

  1. Konfigurieren Sie MySQL Cluster Manager

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.

  1. Datenknoten konfigurieren

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.

  1. Konfigurieren des Verwaltungsknotens

Ä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.

  1. MySQL-Cluster ausführen

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:MySQL-VerbindungsmethodeNächster Artikel:MySQL-Verbindungsmethode