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

Bedingte Kommentare zur Bestimmung des Browsers (IE-Reihe)

<!--[if IE 6]> Nur IE6 kann erkennen <![e...

Probleme mit Join-Abfragen und Unterabfragen in MySQL

Inhaltsverzeichnis Grundlegende Syntax für Multi-...

Detaillierte Erklärung zu anonymen Slots und benannten Slots in Vue

Inhaltsverzeichnis 1. Anonyme Slots 2. Benannte S...

So verwenden Sie nginx, um eine angegebene Schnittstelle (URL) zu blockieren

1. Einleitung Manchmal müssen Sie eine Servicesch...

So ändern Sie schnell die Tabellenstruktur einer MySQL-Tabelle

Tabellenstruktur einer MySQL-Tabelle schnell ände...

Installieren Sie Docker unter CentOS 7

Wenn Sie kein Linux-System haben, finden Sie unte...

Verwendung des Linux-Befehls ifconfig

1. Befehlseinführung Der Befehl ifconfig (Netzwer...

Achten Sie bei der Webseitenerstellung auf die Verwendung von HTML-Tags

Dieser Artikel stellt einige Aspekte von HTML-Tag...

Detaillierte Diskussion zum Thema mysqldump-Datenexport

1. Bei der Verwendung von mysqldump wird ein Fehl...

...

Detaillierte Erklärung zum effizienten Importieren mehrerer SQL-Dateien in MySQL

MySQL bietet mehrere Möglichkeiten, mehrere SQL-D...