MySQL Master-Slave-Daten sind inkonsistent, Eingabeaufforderung: Slave_SQL_Running: Keine Lösung

MySQL Master-Slave-Daten sind inkonsistent, Eingabeaufforderung: Slave_SQL_Running: Keine Lösung

Dieser Artikel beschreibt anhand eines Beispiels die Lösung für die Inkonsistenz zwischen MySQL-Master- und -Slave-Daten und der Eingabeaufforderung: Slave_SQL_Running Nr. Teilen Sie uns die Einzelheiten zu Ihrer Information mit:

Führen Sie auf dem Slave-Server den folgenden Befehl aus

mysql> Slave-Status anzeigen\G;

Es wird Folgendes angezeigt:

Slave_IO_Running: Ja
Slave_SQL_Running: Nein

Zeigt an, dass der Slave nicht synchron ist

Lösung 1 (Fehler ignorieren und mit der Synchronisierung fortfahren):

1. Stoppen Sie zuerst den Slave

mysql> Slave stoppen;

2. Überspringen Sie die falschen Schritte, und die folgenden Schritte können geändert werden

mysql> setze globalen sql_slave_skip_counter=1;

3. Starten Sie den Slave neu

mysql> Slave starten;

4. Überprüfen Sie den Synchronisierungsstatus

mysql> Slave-Status anzeigen\G;

Lösung 2 (Master-Slave neu durchführen, vollständige Synchronisierung):

1. Rufen Sie zuerst die Hauptdatenbank auf, um die Tabelle zu sperren, und achten Sie darauf, das Fenster nicht zu schließen

mysql> Tabelle mit Lesesperre leeren;

2. Sichern Sie Ihre Daten

> mysqldump -uroot -p --opt -R Datenbank > /data/bak.sql

3. Öffnen Sie ein neues Fenster, um die wichtigsten Datenbankinformationen anzuzeigen

mysql> Masterstatus anzeigen;

+------------------+----------+--------------+------------------+-------------------+
| Datei | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000005 | 1158 | | | |
+------------------+----------+--------------+------------------+-------------------+

4. Stoppen Sie den Slave in der Slave-Bibliothek

mysql> Slave stoppen;

5. Importieren Sie die Sicherungsdatendatei

mysql> Quelle /data/bak.sql

6. Synchronisierung zurücksetzen

mysql> Slave zurücksetzen;

7. Setzen Sie den Synchronisationsknoten zurück

mysql> ÄNDERN SIE MASTER IN
MASTER_HOST='192.168.137.233',
MASTER_PORT=3306,
MASTER_USER='synchronisieren',
MASTER_PASSWORD = '123456',
MASTER_LOG_FILE='mysql-bin.000005',
MASTER_LOG_POS=1158;

Bitte ändern Sie Host, Port, Benutzer und Passwort entsprechend Ihren Masterdatenbankeinstellungen und ändern Sie log_file und log_pos entsprechend dem Masterstatus in der Masterdatenbank.

8. Slave aktivieren

mysql> Slave starten;

9. Überprüfen Sie den Slave-Status

mysql> Slave-Status anzeigen\G;

Wenn die folgenden Informationen angezeigt werden, ist das normal

Slave_IO_Running: Ja
Slave_SQL_Running: Ja

10. Entsperren Sie die Masterdatenbank

mysql> Tabellen entsperren;

11. Fügen Sie in der Masterdatenbank erneut Daten hinzu oder ändern Sie sie, um zu prüfen, ob die Daten in der Slavedatenbank synchronisiert sind.

Leser, die an weiteren MySQL-bezogenen Inhalten interessiert sind, können sich die folgenden Themen auf dieser Site ansehen: „MySQL-Abfragekenntnisse“, „Zusammenfassung der allgemeinen MySQL-Funktionen“, „MySQL-Protokolloperationskenntnisse“, „Zusammenfassung der MySQL-Transaktionsoperationskenntnisse“, „MySQL-gespeicherte Prozedurkenntnisse“ und „Zusammenfassung der MySQL-Datenbanksperrenkenntnisse“.

Ich hoffe, dass dieser Artikel für jedermann beim Entwurf einer MySQL-Datenbank hilfreich ist.

Das könnte Sie auch interessieren:
  • Optimierungsmethode für das MySQL-Synchronisierungsproblem mit großer Slave-Verzögerung
  • Grundlegendes Tutorial zum Lösen von Slave-Latenzproblemen in MySQL
  • Analyse von Verzögerungen bei der Slave-Überwachung in MySQL
  • Ein praktischer Bericht über die Wiederherstellung einer MySQL Slave-Bibliothek
  • Konfiguration der MySQL-Master/Slave-Datenbanksynchronisierung und häufige Fehler
  • Detaillierte Erklärung des Parameters slave_exec_mode in MySQL
  • Installations- und Konfigurationsdetails zur Master-Slave-Synchronisierung der MySQL5.6-Datenbank (Master/Slave)
  • Lösung für MySQL Slave, der Oom-Killer auslöst
  • MySQL-Slave verzögert die Fremdschlüsselprüfung und die automatische Inkrementsperre für eine Spalte

<<:  Beispielcode für horizontales Balkendiagramm von Echarts Bar

>>:  So installieren Sie Docker auf Ubuntu20.04 LTS

Artikel empfehlen

Empfohlene Methode zur Fehlerbehandlung für canvas.toDataURL image/png

Problemhintergrund: Es ist erforderlich, einen Sc...

JavaScript-Canvas zum Erzielen eines Code-Rain-Effekts

In diesem Artikel wird der spezifische Code für C...

SASS Style Programmierhandbuch für CSS

Da immer mehr Entwickler SASS verwenden, müssen w...

Einführung in die MySQL-Gesamtarchitektur

Die Gesamtarchitektur von MySQL ist in die Server...

Reines CSS zum Ändern der Farbe des Bildes

Die CSS-Technik zum Ändern der Farbe eines Bildes...

Sequentielles und zufälliges Schreiben auf Linux-Festplatten

1. Einleitung ● Zufälliges Schreiben führt dazu, ...

So verpacken Sie das Uniapp-Projekt als Desktop-Anwendung

Electron installieren cnpm installiere Electron -...

Perfekte Lösung für asynchrone Timeout-Vorgänge im JavaScript-Frontend

Inhaltsverzeichnis Was passiert, wenn die Ausführ...