Detaillierte Erläuterung der MySQL-Methode für verzögerte Replikationsbibliotheken

Detaillierte Erläuterung der MySQL-Methode für verzögerte Replikationsbibliotheken

Einfach ausgedrückt besteht die verzögerte Replikation darin, eine feste Verzögerungszeit, beispielsweise 1 Stunde, festzulegen, sodass die Slave-Datenbank eine Stunde hinter der Master-Datenbank zurückbleibt.

MySQL-Bibliotheksfunktion für verzögerte Replikation

Die Existenz ist sinnvoll und die verzögerte Replikation kann verwendet werden, um die folgenden drei Arten von Problemen zu lösen:

1. Wird verwendet, um Daten nach einem Datenbankfehler schnell wiederherzustellen.

Wenn beispielsweise jemand versehentlich eine Tabelle bedient, ändern sich die Daten in der Slave-Datenbank während der Verzögerungszeit nicht, sodass die Daten in der Slave-Datenbank für eine schnelle Wiederherstellung verwendet werden können.

Stoppen Sie den Dienst, importieren Sie die Tabelle aus der Slave-Datenbank direkt in die Master-Datenbank und füllen Sie das Binlog aus. Binglog kann die Tabelle nicht wiederherstellen.

2. Wird für Verzögerungstests verwendet

Wenn Sie beispielsweise die Lese- und Schreibvorgänge in der Datenbank gut getrennt haben und die Slave-Datenbank als Lesedatenbank verwenden, möchten Sie wissen, was passiert, wenn die Daten verzögert werden. Dann können Sie diese Funktion auch verwenden, um Latenz zu simulieren.

Wenn der Druck nicht zu groß ist, ist die Verzögerung sehr gering. Wie ist es, wenn die Verzögerung größer ist? Wie sieht eine 5-minütige Master-Slave-Verzögerung aus?

3. Wird zum Abfragen alter Daten und für andere Zwecke verwendet

Wenn Sie beispielsweise häufig den Wert einer Tabelle oder eines Felds von vor einem bestimmten Tag überprüfen müssen, müssen Sie möglicherweise die Sicherung wiederherstellen und überprüfen.

Sollte es zu einer Verzögerung seitens der Datenbank kommen, beispielsweise um eine Woche, können ähnliche Anforderungen gelöst werden. Natürlich haben nicht alle Teams diesen Bedarf.

Einrichten einer verzögerten Replikation

Die Konfiguration der verzögerten Replikation wird durch die Einstellung des Parameters MASTER TO MASTER_DELAY auf dem Slave erreicht:

ÄNDERN SIE MASTER IN MASTER_DELAY = N;

N ist eine Anzahl von Sekunden. Diese Anweisung legt fest, dass die Slave-Datenbank N Sekunden wartet, bevor sie Daten mit der Master-Datenbank synchronisiert.

Spezifische Operationen:

Melden Sie sich beim Slave-Datenbankserver an

mysql>Slave stoppen;
mysql>ÄNDERN SIE MASTER IN MASTER_DELAY = 600;
mysql>Slave starten;
mysql>Slave-Status anzeigen \G;

Überprüfen Sie, ob der Wert von SQL_Delay 600 beträgt. Dies bedeutet, dass die Einstellung erfolgreich war.

Befehlshinweise:

SQL_Delay: Eine nicht negative Ganzzahl, die die Anzahl der Sekunden angibt, die der Slave hinter dem Master zurückbleibt.

SQL_Remaining_Delay: Wenn Slave_SQL_Running_State wartet, bis MASTER_DELAY Sekunden vergangen sind, führt der Master das Ereignis aus.

Dieses Feld enthält eine Ganzzahl, die angibt, wie viele Sekunden die Verzögerung beträgt. Zu anderen Zeiten ist dieses Feld 0.

So, das war’s für heute. Manche kleinen Wissenshäppchen sind kurz und schön, während lange Artikel sehr nützlich sind. Tatsächlich lernen wir jedoch sehr wenig. Lassen Sie uns dieses kleine Wissen sammeln. Weitere Informationen zu den Methoden der MySQL-verzögerten Replikationsbibliothek finden Sie unter den folgenden verwandten Links.

Das könnte Sie auch interessieren:
  • Konfigurationsschritte für die MySQL-Master-Slave-Synchronisierung und die Trennung von Lesen und Schreiben
  • Zwei Lösungen für die Asynchronität von MySQL-Master-Slave-Datenbanken
  • Das Prinzip und die Konfigurationsmethode der MySQL-Master-Slave-Replikation (ausführlicher)
  • Interpretation der MySQL Master-Slave-Konfiguration und deren prinzipielle Analyse (Master-Slave)
  • Gemeinsame Nutzung der MySQL-Master-Slave-Synchronisations-Sicherungsstrategie
  • Analyse und Lösung des MySQL-Master-Slave-Asynchronie-Verzögerungsprinzips
  • Detaillierte Schritte zur Implementierung von MySQL Hot Backup unter Linux-Systemen (MySQL Master-Slave-Replikation)
  • Tatsächlicher Betriebsfall der MySQL-Master-Slave-Replikation (Master-Slave)
  • Detaillierte Erläuterung der MySQL Master-Slave-Replikationsschritte und Lösungen für häufige Fehler
  • Ein Beispiel zur Lösung eines synchronen MySQL-Master-Slave-Replikationsfehlers
  • Das Implementierungsprinzip der MySQL-Master-Slave-Synchronisation
  • Einführung in die Heartbeat-Funktion der MySQL Master-Slave-Replikationskonfiguration
  • Konfigurationsbeispiel zur Angabe der Master-Slave-Synchronisierung eines MySQL-Datenbankservers unter Linux
  • Lösung für das Problem, dass die MySQL-Master-Slave-Datenbank nicht synchronisiert ist
  • Schritte zur Master-Slave-Synchronisierung und Sicherung einer MySQL-Datenbank in einer Windows-Umgebung (Einweg-Synchronisierung)
  • Konfigurationsmethode für die Synchronisierung und Sicherung der MySQL-Master-Slave-Datenbank
  • Gemeinsame Nutzung der Master-Slave-Konfigurationsmethode der MySQL-Datenbank
  • Detaillierte Erläuterung zur Reduzierung der MySQL Master-Slave-Datensynchronisationsverzögerung

<<:  Detailliertes Tutorial von VMware zum Erstellen einer virtuellen Linux-Maschine und zum Einrichten eines virtuellen Maschinennetzwerks

>>:  Tipps zur Kurzschrift in JavaScript

Artikel empfehlen

So installieren und konfigurieren Sie MySQL und ändern das Root-Passwort

1. Installation apt-get install mysql-server erfo...

Häufig verwendete höherwertige Funktionen und umfassende Beispiele in Vue

1. Häufig verwendete höherwertige Funktionen von ...

Zusammenfassung der unbekannten Verwendung von "!" in Linux

Vorwort Tatsächlich gibt es für das bescheidene „...

Einführung in die reaktive Funktion toRef-Funktion ref-Funktion in Vue3

Inhaltsverzeichnis Reaktive Funktion Verwendung: ...

So installieren und konfigurieren Sie den SSH-Dienst in Ubuntu 18.04

Installieren Sie das SSH-Tool 1. Öffnen Sie das T...

Zusammenfassung einiger gängiger Methoden des JavaScript-Arrays

Inhaltsverzeichnis 1. So erstellen Sie ein Array ...

So reduzieren Sie die Bildgröße mithilfe des mehrstufigen Docker-Builds

In diesem Artikel wird beschrieben, wie Sie die m...

Wie gestaltet man eine Webseite? Wie erstelle ich eine Webseite?

Wenn es um das Verständnis von Webdesign geht, sc...

Eine kurze Diskussion über die Magie von parseInt() in JavaScript

Ursache Der Grund für das Schreiben dieses Blogs ...