Konfigurationsprozess für die MySQL-Master-Slave-Replikation

Konfigurationsprozess für die MySQL-Master-Slave-Replikation

Konfiguration der Hauptbibliothek

1. Konfigurieren Sie MySQL

vim /etc/meine.cn
# Fügen Sie der Datei server-id=1 den folgenden Inhalt hinzu. # Stellen Sie sicher, dass die Server-ID eindeutig ist log-bin = /var/lib/mysql/mysql-bin.log
binlog-do-db = db1 
binlog-do-db = db2

Unter ihnen sind db1 und db2 die für die Master-Slave-Replikation vorgesehenen Bibliotheken. Wenn es mehrere gibt, schreiben Sie einfach mehrere Zeilen. Starten Sie die Datenbank nach der Konfiguration neu: service mysqld restart restart

2. Replikationsbenutzer hinzufügen

Fügen Sie über phpmyadmin einen neuen Benutzer hinzu und erteilen Sie ihm die Berechtigung REPLICATION SLAVE. Oder melden Sie sich als Root-Benutzer bei MySQL an und erteilen Sie die folgenden Berechtigungen:

GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%' IDENTIFIZIERT DURCH 'Passwort'

Dabei ist „repl“ der Benutzername und „password“ das Passwort dieses Benutzers.

3. Daten sichern

Wenn sichergestellt ist, dass keine neuen Daten generiert werden, ist eine Sperrung der Datenbank nicht erforderlich. Wenn dies nicht gewährleistet werden kann, müssen Sie die Datenbank für jede Dump-Datei sperren:

verwende db1;
FLUSH-TABELLEN MIT LESE-SPERRE;

Dann sichern Sie die Daten:

mysqldump -uroot -p db1 > db1.sql

Wenn mehrere Datenbanken vorhanden sind, wiederholen Sie den obigen Vorgang mehrmals.

4. Überprüfen Sie den Speicherort der Binärdatei

Melden Sie sich als Root bei MySQL an und überprüfen Sie den Master-Status:

Masterstatus anzeigen;

Dieser Befehl erzeugt eine Ausgabe in etwa folgendem Format:

+-----------------+--------------------------+----------------+------------------+
| Datei | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-----------------+--------------------------+----------------+------------------+
| mysql-bin.00002 | 445 | db1,db2 | |
+-----------------+--------------------------+----------------+------------------+
1 Zeile im Satz (0,00 Sek.)

5. Entsperren

Wenn die Anzahl der Exporte am höchsten ist und die Datenbank lesegesperrt ist, müssen Sie diese freigeben:

verwende db1;
TABELLEN ENTSPERREN;

An diesem Punkt ist die Hauptdatenbankkonfiguration abgeschlossen. Merken Sie sich insbesondere die Datei- und Positionswerte in show master status Ausgabe.

Konfiguration aus der Bibliothek

1. Erstellen Sie eine neue Datenbank

Erstellen Sie zunächst eine Datenbank mit demselben Namen in der Slave-Bibliothek.

2. Konfigurieren Sie die Slave-Datenbank

vim /etc/meine.cnf
# Fügen Sie my.cnf den folgenden Inhalt hinzu:
server-id = 2 # Stellen Sie sicher, dass die ID eindeutig ist relay-log = /var/lib/mysql/mysql-relay-bin.log
replizieren-wild-do-table = db1.%
replizieren-wild-do-table = db2.%

Wenn Sie mehrere Datenbanken synchronisieren, muss replicate-wild-do-table mehrere Zeilen schreiben. Starten Sie die Datenbank nach der Konfiguration neu.

3. Daten importieren

Importieren Sie die vom Master-Server gesicherten Daten in den Slave-Server:

mysql -uroot -p db1 < db1.sql

4. Konfigurieren Sie die Master-Slave-Synchronisierung

Melden Sie sich beim MySQL-Server an und konfigurieren Sie die synchronisierten Masterserverinformationen:

> ändere Master in master_host='xxx.xxx.xx.xx',
> master_user='repl',
> master_password='Passwort',
> master_log_file='mysql-bin.00000x',
> master_log_pos=xxxx;

Nach der Konfiguration starten Sie die Master-Slave-Synchronisierung: start slave . Überprüfen Sie dann den Status mit dem Befehl: show slave status . Bei Erfolg sollten sowohl slave_io_running als auch slave_sql_running „yes“ lauten.

prüfen

Vorgänge wie das Hinzufügen neuer Datensätze oder Tabellen zur Masterdatenbank können nahezu in Echtzeit in der Slavedatenbank wiedergegeben werden.

Oben sind die Details des Konfigurationsprozesses der MySQL-Master-Slave-Replikation aufgeführt. Weitere Informationen zur Konfiguration der MySQL-Master-Slave-Replikation finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • So beheben Sie Probleme mit doppelten Schlüsseln bei der MySQL-Master-Slave-Replikation
  • Umfassende Analyse des MySql-Master-Slave-Replikationsmechanismus
  • Detaillierte Erläuterung der MySQL Master-Slave-Replikation und der Lese-/Schreibtrennung
  • MySQL-Datenbank GTID realisiert Master-Slave-Replikation (super praktisch)
  • Implementierungsprinzip und Konfiguration der MySql Master-Slave-Replikation
  • MySQL Master-Slave-Replikationsprinzip und zu beachtende Punkte
  • So überspringen Sie Fehler bei der MySQL-Master-Slave-Replikation
  • Umfassende Interpretation der MySQL Master-Slave-Replikation, vom Prinzip bis zur Installation und Konfiguration
  • Zusammenfassung verschiedener Replikationsmethoden für die MySQL Master-Slave-Replikation
  • Gängige Reparaturmethoden für die Trennung der MySQL Master-Slave-Replikation

<<:  So verwenden Sie Filter zur Implementierung der Überwachung in Zabbix

>>:  Beispielcode einer in Vue3 gekapselten Lupenkomponente

Artikel empfehlen

Zusammenfassung der allgemeinen Docker-Befehle und Tipps

Installationsskript Ubuntu / CentOS Es scheint ei...

Div adaptive Höhe füllt automatisch die verbleibende Höhe

Szenario 1: HTML: <div Klasse="äußere&quo...

7 native JS-Fehlertypen, die Sie kennen sollten

Inhaltsverzeichnis Überblick 1. Bereichsfehler 2....

Natives JS zum Erzielen von Laufschrifteffekten

Heute werde ich Ihnen einen Laufschrifteffekt zei...

So verwenden Sie ein Domestic Image Warehouse für Docker

1. Problembeschreibung Aus bestimmten Gründen ist...

Eine detaillierte Analyse und Verarbeitung von MySQL-Alarmen

Vor kurzem hat ein Dienst einen Alarm ausgelöst, ...

Detaillierte Analyse des MySQL-Datentyps DECIMAL

Vorwort: Wenn wir Dezimalzahlen speichern müssen ...