Analyse der Schwierigkeiten im Hot-Standby der MySQL-Datenbank

Analyse der Schwierigkeiten im Hot-Standby der MySQL-Datenbank

Ich habe Ihnen zuvor die Konfigurationsmethode für den Hot-Standby-Betrieb von MySQL-Datenbanken auf zwei Maschinen vorgestellt. Interessierte Freunde können sich darauf beziehen. In diesem Abschnitt konzentrieren wir uns darauf, die wichtigen Links und Bereiche, die Aufmerksamkeit erfordern, zusammenzufassen und zu analysieren.

I. Einleitung

MySQL-Version: 5.7.20

Die erste Hauptserver-IP: 192.168.71.139

Der zweite Hauptserver IP:192.168.71.141

2. Konfiguration

Der erste primäre Server 192.168.71.139

1: Ändern Sie die Datei /etc/mysql/my.cnf. Beachten Sie, dass # hier ein Kommentar ist. Schreiben Sie ihn nicht in die Konfigurationsdatei.

server-id = 141 #Server-ID, kann nicht wiederholt werden, es wird empfohlen, die letzten drei Ziffern der IP zu verwenden.
log-bin = mysql-bin
binlog-ignore-db = mysql,information_schema #Ignoriere die Bibliothek, die Binlog-Protokolle schreibt
auto-increment-increment = 2 #Feldänderung Inkrementwert
auto-increment-offset = 1 #Die anfängliche Feld-ID ist 1
slave-skip-errors = all #Alle Replikationsfehler ignorieren

2: Melden Sie sich bei MySQL an und erstellen Sie ein Konto, das anderen Servern die Replikation ermöglicht

GRANT REPLICATION SLAVE ON *.* an „MySQL-Konto“@„%“, identifiziert durch „Passwort“;

3: Verwenden Sie Show Master Status, um den Status abzufragen

Der zweite primäre Server ist 192.168.71.139

1: Ändern Sie die Datei /etc/mysql/my.cnf, wobei die Server-ID = 139 ist und der Rest unverändert bleibt.

Mit Show Master Status den Status abfragen

An diesem Punkt müssen Sie MySQL auf beiden Servern neu starten

Führen Sie Synchronisierungsanweisungen unter 192.168.71.141 aus

Der Wert master_log_file stammt vom Server 139, das Feld File nach der Ausführung von show master status

Der Wert master_log_file stammt vom Server 139, das Feld Position nach der Ausführung von show master status
ändere Master in master_host='192.168.71.139',master_user='master2',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=154;

Führen Sie Synchronisierungsanweisungen unter 192.168.71.139 aus

Der Wert master_log_file stammt vom Server 141, das Feld File nach der Ausführung von show master status

Der Wert master_log_file stammt vom Server 141, das Feld Position nach der Ausführung von show master status

ändere Master in master_host='192.168.71.141',master_user='master1',master_password='123456',master_log_file='mysql-bin.000002', master_log_pos=154;

Dies ist das Ende der Konfiguration. Starten Sie MySQL neu, melden Sie sich bei MySQL an und überprüfen Sie den Konfigurationsstatus mit „show slave status\G“. Es wird festgestellt, dass Slave_IO nicht gestartet werden kann und der folgende Fehler auftritt.

Der Slave-E/A-Thread wird angehalten, da Master und Slave über die gleichen MySQL-Server-UUIDs verfügen. Damit die Replikation funktioniert, müssen diese UUIDs unterschiedlich sein.

Das Protokoll zeigt, dass die Master- und Slave-UUIDs dupliziert sind. Da die beiden Server geklont sind, müssen Sie /var/lib/mysql/auto.cnf ändern.

Hier habe ich nur den letzten Buchstaben geändert, da ich MySQL nicht starten könnte, wenn ich zu viel geändert hätte. Nachdem die Änderung abgeschlossen ist, starten Sie MySQL neu, melden Sie sich bei MySQL an und führen Sie „show slave status\G“ aus, wie unten gezeigt

Drei: Test

Führen Sie den folgenden SQL-Befehl auf einem beliebigen Server aus

Tabelle tab141 erstellen (ID int Primärschlüssel);

Tabelle tab139 erstellen (ID int Primärschlüssel);

Führen Sie das folgende SQL auf dem Server 139 aus

in Tab139 Werte (1) einfügen;

Führen Sie das folgende SQL auf dem 141-Server aus

in tab141 Werte einfügen(2);

Die Ergebnisse sind wie folgt:

Wenn Sie Fragen haben, können Sie diese gerne im Kommentarbereich unten diskutieren.

Das könnte Sie auch interessieren:
  • MySQL-Backup und -Recovery im Hot-Standby-Modus (3)
  • Detaillierte Schritte zur Implementierung von MySQL Hot Backup unter Linux-Systemen (MySQL Master-Slave-Replikation)
  • Konfigurationsmethode für den Hot-Standby-Betrieb mit MySQL-Datenbank auf zwei Maschinen
  • Implementierungsschritte für MySQL-Hot-Backup auf zwei Maschinen

<<:  Drei Netzwerkmethoden und Prinzipien von virtuellen VMware-Maschinen (Zusammenfassung)

>>:  Vue implementiert Video-Upload-Funktion

Artikel empfehlen

Kostenloses Tool zur Überprüfung der Richtigkeit von HTML-, CSS- und RSS-Feeds

Ein Trick zum Umgang mit dieser Art von Fehlern be...

Eine kurze Diskussion über die Lebenszyklusfunktionen von React Component

Was sind die Lebenszyklusfunktionen von React-Kom...

Beispielcode zur Implementierung eines gepunkteten Rahmen-Scrolleffekts mit CSS

Wir sehen oft einen coolen Effekt, wenn die Maus ...

CSS HACK für IE6/IE7/IE8/IE9/FF (Zusammenfassung)

Seit ich die offizielle Version von IE8.0 install...

Beispielanalyse der von MySQL 5.7 generierten Spaltennutzung

Dieser Artikel veranschaulicht anhand von Beispie...

Lösung zur Deinstallation von Python und Yum im CentOs-System

Hintergrund des Unfalls: Vor einigen Tagen habe i...

So zeichnen Sie eine vertikale Linie zwischen zwei Div-Tags in HTML

Als ich kürzlich eine Schnittstelle zeichnete, st...