Detaillierte Erläuterung der Wissenspunkte zum Umschalten zwischen MySQL MGR-Einzelmaster- und Multimastermodus

Detaillierte Erläuterung der Wissenspunkte zum Umschalten zwischen MySQL MGR-Einzelmaster- und Multimastermodus

Ausführung der Hauptbibliothek

DATENBANK ERSTELLEN, Test, ZEICHENSATZ utf8, SORTIMENT utf8_general_ci;
Test verwenden;
Tabelle erstellen, falls nicht vorhanden: h1 (ID int (10) PRIMARY KEY AUTO_INCREMENT, Name varchar (50) NOT NULL);
in test.h1 Werte einfügen (1, „wang“), (2, „guo“), (3, „yang“), (4, „he“);
wähle * aus test.h1;

Test aus der Bibliothek

Löschen Sie aus test.h1, wo ID > 3;
FEHLER 1290 (HY000): Der MySQL-Server läuft mit der Option --super-read-only und kann diese Anweisung daher nicht ausführen.

1. Wechsel vom Single-Master- zum Multi-Master-Modus

1.1. Stoppen Sie die Gruppenreplikation (führen Sie dies auf allen MGR-Knoten aus):

Stoppen Sie die Gruppenreplikation.
Setzen Sie den globalen Gruppenreplikationsmodus „single_primary_mode“ auf „OFF“.
Setzen Sie global group_replication_enforce_update_everywhere_checks=ON;

1.2. Führen Sie einen beliebigen Mgr-Knoten aus: 186

Setzen Sie GLOBAL group_replication_bootstrap_group=ON;
STARTEN SIE GROUP_REPLICATION;
Setzen Sie GLOBAL group_replication_bootstrap_group=OFF;

1.3、Dann auf anderen Mgr-Knoten ausführen: 194 195

STARTEN SIE GROUP_REPLICATION;

1.4. MGR-Gruppeninformationen anzeigen (Ansicht von jedem MGR-Knoten aus)

WÄHLEN SIE * AUS Performance_Schema.Replikationsgruppenmitglieder;

Es ist ersichtlich, dass der Status aller MGR-Knoten online ist, die Rolle PRIMARY ist und der MGR-Multimastermodus erfolgreich eingerichtet wurde.

Überprüfen Sie die Knotendatensynchronisierung im MGR-Multimastermodus:

Daten auf MGR-Knoten1 aktualisieren:

Daten auf MGR-Knoten2 aktualisieren

Daten auf MGR-Knoten3 aktualisieren

Im MGR-Multimastermodus können alle Knoten Lese- und Schreibvorgänge durchführen.

2. Zurück in den Single-Master-Modus wechseln

2.1. Gruppenreplikation stoppen (auf allen MGR-Knoten ausführen):

Stoppen Sie die Gruppenreplikation.
Setzen Sie global group_replication_enforce_update_everywhere_checks=OFF;
Setzen Sie den globalen Gruppenreplikationsmodus „single_primary_mode“ auf „ON“.

2.2. Wählen Sie einen Knoten als Masterknoten aus und führen Sie (186) auf dem Masterknoten aus:

Setzen Sie GLOBAL group_replication_bootstrap_group=ON;
STARTEN SIE GROUP_REPLICATION;
Setzen Sie GLOBAL group_replication_bootstrap_group=OFF;

2.3. Auf den verbleibenden Knoten ausführen, also von den Bibliotheksknoten (194 195):

STARTEN SIE GROUP_REPLICATION;

2.4. MGR-Gruppeninformationen anzeigen (auf jedem MGR-Knoten verfügbar):

WÄHLEN SIE * AUS Performanceschema.Replikationsgruppenmitglieder;

Wechseln Sie zurück in den Single-Master-Modus. Der Master verfügt über Lese- und Schreibberechtigungen, die anderen beiden Slave-Knoten sind schreibgeschützt und können nicht schreiben.

Legen Sie das Whitelist-Netzwerksegment des MGR-Gruppenclusters fest: Fügen Sie das Netzwerksegment hinzu, in dem sich der Knoten befindet

Stoppen Sie die Gruppenreplikation.
Setzen Sie die globale group_replication_ip_whitelist="127.0.0.1/32,172.16.60.0/24,172.16.50.0/24,172.16.51.0/24";
Gruppenreplikation starten;
Variablen wie „group_replication_ip_whitelist“ anzeigen;

Wissenspunkterweiterung

MySQL Group Replication (MGR) ist eine Datenbanklösung mit hoher Verfügbarkeit und Skalierbarkeit, die von MySQL in Version 5.7.17 eingeführt wurde. Sie wird in Form eines Plug-Ins bereitgestellt und erreicht die endgültige Konsistenz verteilter Daten. Die Funktionen von MGR lassen sich wie folgt zusammenfassen:

  • Hohe Konsistenz: Die Gruppenreplikation wird basierend auf dem verteilten Paxos-Protokoll implementiert, um die Datenkonsistenz sicherzustellen;
  • Hohe Fehlertoleranz: automatischer Erkennungsmechanismus. Solange die Mehrheit der Knoten nicht ausgefallen ist, kann das System weiterarbeiten. Integrierter Schutzmechanismus gegen Brain-Split.
  • Hohe Skalierbarkeit: Durch das Hinzufügen und Entfernen von Knoten werden die Informationen zu Gruppenmitgliedern automatisch aktualisiert. Nach dem Beitritt eines neuen Knotens werden inkrementelle Daten von anderen Knoten automatisch synchronisiert, bis die Daten mit denen anderer Knoten konsistent sind.
  • Hohe Flexibilität: Es bietet Single-Master-Modus und Multi-Master-Modus. Im Single-Master-Modus kann der Master automatisch ausgewählt werden, nachdem die Hauptdatenbank ausgefallen ist. Alle Schreibvorgänge werden auf dem Hauptknoten ausgeführt. Der Multi-Master-Modus unterstützt das Schreiben auf mehreren Knoten.

Oben finden Sie den ausführlichen Inhalt der detaillierten Erklärung der Wissenspunkte zum Umschalten zwischen MySQL MGR-Einzelmaster- und -Multimastermodus. Weitere Informationen zum Umschalten zwischen MySQL MGR-Einzelmaster- und -Multimastermodus finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • So konfigurieren Sie MGR Single Master und mehrere Slaves in MySQL 8.0.15
  • Was sind die Vorteile von MySQL MGR?
  • mysql 8.0.18 mgr-Installation und seine Umschaltfunktion
  • MySQL 8.0.18 verwendet Klon-Plugin, um die MGR-Implementierung neu zu erstellen
  • Detaillierte Erläuterung der Methode zur Bestimmung des einzelnen Masterknotens von MySQL 5.7 MGR
  • Häufige Probleme und Lösungen beim Erstellen von MySQL MGR

<<:  Der bequemste Weg, einen Zookeeper-Server in der Geschichte zu erstellen (empfohlen)

>>:  Lösung zum Verlassen von Lücken zwischen BootStrap-Rastern

Artikel empfehlen

So mounten Sie eine neue Festplatte auf einem Linux-Cloud-Server

Hintergrund Im Unternehmen wurde ein neuer Server...

So führen Sie eine Spring Boot-Anwendung in Docker aus

In den letzten Tagen habe ich gelernt, wie man Sp...

Detaillierte Erklärung des MySQL-Datenbankparadigmas

Vorwort: Ich habe oft von Datenbankparadigmen geh...

So implementieren Sie eine geplante Sicherung einer MySQL-Datenbank

1. Erstellen Sie ein Shell-Skript vim backupdb.sh...

Analyse des Docker-Compose-Image-Release-Prozesses des Springboot-Projekts

Einführung Das Docker-Compose-Projekt ist ein off...

Vue3.0 Adaptiver Betrieb von Computern mit unterschiedlichen Auflösungen

Zuerst müssen wir einige Abhängigkeiten installie...

Lösung zum Vergessen des Administratorkennworts der MySQL-Datenbank

1. Geben Sie den Befehl mysqld --skip-grant-table...

Diskussion zu Bildpfadproblemen in CSS (dasselbe Paket/anderes Paket)

In CSS-Dateien müssen Sie manchmal einen Hintergru...