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 ReplikationDie 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 ReplikationDie 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:
|
>>: Tipps zur Kurzschrift in JavaScript
1. Installation apt-get install mysql-server erfo...
Dieser Artikel beschreibt die MySQL-Datentypen un...
1. Häufig verwendete höherwertige Funktionen von ...
Vorwort Teilen Sie zwei Methoden, um zu überwache...
Das einfache, nahtlos scrollende Karussell weist ...
Vorwort Tatsächlich gibt es für das bescheidene „...
Inhaltsverzeichnis Reaktive Funktion Verwendung: ...
Installieren Sie das SSH-Tool 1. Öffnen Sie das T...
Inhaltsverzeichnis 1. So erstellen Sie ein Array ...
Einführung Während des Arbeitsprozesses kommt es ...
In diesem Artikel wird beschrieben, wie Sie die m...
In diesem Artikel werden anhand von Beispielen di...
Wenn es um das Verständnis von Webdesign geht, sc...
Vorwort Wenn wir Anwendungen als Docker-Container...
Ursache Der Grund für das Schreiben dieses Blogs ...