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

Schritte und Fallstricke beim Upgrade von Linux MySQL 5.5 auf MySQL 5.7

Inhaltsverzeichnis Linux MySQL 5.5 auf MySQL 5.7 ...

CSS-Code zum Anordnen von Fotos in Moments

Zunächst können Sie Moments öffnen und mehrere La...

Dreißig HTML-Codierungsrichtlinien für Anfänger

1. HTML-Tags immer schließen Im Quellcode der vor...

So lösen Sie das Problem, dass Seata die MySQL 8-Version nicht verwenden kann

Mögliche Gründe: Der Hauptgrund, warum Seata MySQ...

Konvertierung von virtuellem Dom in reales Dom mit Vue

Es gibt eine andere Baumstruktur Javascript-Objek...

MySQL 5.6.23 Installations- und Konfigurations-Umgebungsvariablen-Tutorial

In diesem Artikel finden Sie das Installations- u...

Lassen Sie uns ausführlich über Vues Mixin und Vererbung sprechen

Inhaltsverzeichnis Vorwort Mischen Mixin-Hinweis ...

Einführung in die CentOS7-Firewall und portbezogene Befehle

Inhaltsverzeichnis 1. Überprüfen Sie den aktuelle...

Detaillierte Erklärung des daily_routine Beispielcodes in Linux

Schauen Sie sich zunächst den Beispielcode an: #/...

CSS-Code zur Steuerung der Hintergrundfarbe der Webseite

Ich glaube, jeder macht sich oft Sorgen, ob er Bi...

Detaillierte Erklärung zur Verwendung von Echarts-Maps in Angular

Inhaltsverzeichnis Initialisierung von Echart App...

Zusammenfassung der schnellen Spaltenaddition bei MySQL 8.0 Online DDL

Inhaltsverzeichnis Problembeschreibung Historisch...

Detaillierte Erklärung der neuen Funktion ROLE in MySQL 8

Welche Probleme löst MySQL ROLE? Wenn Sie ein DBA...