Heim >Datenbank >MySQL-Tutorial >Detaillierte Erläuterung des MySQL-Master-Slave-Replikationsprinzips
Detaillierte Erläuterung des MySQL-Master-Slave-Replikationsprinzips
Zunächst verfügt die Datenbank über eine „bin-log“-Binärdatei, die zeichnet alle SQL-Anweisungen auf; kopiert dann die SQL-Anweisung aus der „bin-log“-Datei der Master-Datenbank und führt schließlich die kopierte SQL-Anweisung in der „relay-log“-Redo-Log-Datei der Slave-Datenbank aus.
Master-Slave-Replikation
Master-Slave-Replikation wird verwendet, um eine Datenbankumgebung einzurichten, die genau der Master-Datenbankumgebung entspricht Datenbank, genannt Die Slave-Datenbank und die Master-Datenbank sind im Allgemeinen Quasi-Echtzeit-Geschäftsdatenbanken. In der am häufigsten verwendeten MySQL-Datenbank werden Einzelelement- und asynchrone Zuweisungen unterstützt. Während des Zuweisungsprozesses fungiert ein Server als Master-Server und der andere Server als Slave-Server. Zu diesem Zeitpunkt schreibt der Master-Server die Aktualisierungsinformationen in eine bestimmte Binärdatei.
Und verwaltet einen Dateiindex, um die Protokollrotation zu verfolgen. Dieses Protokoll kann aufgezeichnet und zur Aktualisierung an den Slave-Server gesendet werden. Wenn ein Slave-Server eine Verbindung zum Master-Server herstellt, benachrichtigt der Slave-Server den Master-Server über den Speicherort der letzten erfolgreichen Aktualisierung, die aus der Protokolldatei des Slave-Servers gelesen wurde. Der Slave-Server empfängt dann alle seit diesem Zeitpunkt erfolgten Updates, sperrt ihn dann und wartet, bis der Master-Server neue Updates benachrichtigt.
Die Rolle der Master-Slave-Replikation
1. Führen Sie eine Hot-Sicherung der Daten als Backup-Datenbank durch Slave-Datenbank weiterarbeiten, um Datenverlust zu vermeiden.
2. Architekturerweiterung. Das Geschäftsvolumen wird immer größer und die E/A-Zugriffsfrequenz ist zu hoch, was von einer einzelnen Maschine nicht erfüllt werden kann. Derzeit wird Multi-Datenbank-Speicher verwendet, um die Häufigkeit des Festplatten-E/A-Zugriffs zu reduzieren Verbessern Sie die E/A-Leistung einer einzelnen Maschine.
3. Durch die Trennung von Lesen und Schreiben kann die Datenbank eine größere Parallelität unterstützen. Besonders wichtig in Berichten. Da einige SQL-Anweisungen für Berichte sehr langsam sind, verursachen sie Tabellensperren und wirken sich auf Front-End-Dienste aus. Wenn die Rezeption den Master und der Bericht den Slave verwendet, führt die Berichts-SQL nicht zu einer Front-Desk-Sperre, wodurch die Geschwindigkeit der Rezeption sichergestellt wird.
Empfohlenes Tutorial: „PHP“
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des MySQL-Master-Slave-Replikationsprinzips. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!