Master-Slave-Synchronisationskonfiguration und Lese-/Schreibtrennung der MySQL-Datenbank

Master-Slave-Synchronisationskonfiguration und Lese-/Schreibtrennung der MySQL-Datenbank

Die Verwendung der MySQL Master-Slave-Replikation bietet folgende Vorteile:

1. Zur Verbesserung der Stabilität wird die Master-Slave-Serverarchitektur übernommen. Wenn der primäre Server ausfällt, können wir den Slave-Server zum Bereitstellen von Diensten verwenden.

2. Die separate Verarbeitung von Benutzeranforderungen auf dem Master- und Slave-Server kann die Effizienz der Datenverarbeitung verbessern.

3. Kopieren Sie die Daten auf dem Master-Server auf den Slave-Server, um die Daten vor versehentlichem Verlust zu schützen.

Umgebungsbeschreibung:

Neue Unternehmen müssen eine MySQL-Datenbank mit einer Master-Slave-Replikationsarchitektur erstellen.

Masterserver (mysql-Master): IP-Adresse: 192.168.48.128, mysql installiert, keine Benutzerdaten.

Slave-Server (mysql-slave): IP-Adresse: 192.168.48.130, mysql installiert, keine Benutzerdaten.

Sowohl der Master- als auch der Slave-Server können normal Dienste bereitstellen.

Konfigurieren des Masterservers

1. Bearbeiten Sie die Datenbankkonfigurationsdatei my.cnf oder my.ini (Windows), normalerweise im Verzeichnis /etc/.

Fügen Sie unten [mysqld] den folgenden Code ein:

log-bin=mysql-bin
Server-ID = 1
innodb_flush_log_at_trx_commit = 1
sync_binlog=1
binlog-do-db=WordPress
binlog_ignore_db=mysql

veranschaulichen:

server-id=1 //Die 1 in server-id=1 kann beliebig definiert werden, solange sie eindeutig ist.

binlog-do-db=wordpress // bedeutet, nur WordPress zu sichern.

binlog_ignore_db=mysql //Gibt an, dass das MySQL-Backup ignoriert wird.

Ohne binlog-do-db und binlog_ignore_db werden alle Datenbanken gesichert.

2. Starten Sie dann MySQL neu:# service mysqld restart restart

3. Melden Sie sich bei MySQL an, fügen Sie in MySQL ein Sicherungskonto hinzu und autorisieren Sie es für den Slave-Server.

[root@localhost~]#mysql -u root –p 123456 Melden Sie sich bei mysql an
mysql>gewähre Replikations-Slave auf*.* an 'backup'@'192.168.48.130', identifiziert durch 'backup';

Erstellen Sie einen Backup-Benutzer und autorisieren Sie 192.168.48.130 zur Verwendung des Kontos.

4. Fragen Sie den Status der Masterdatenbank ab und notieren Sie die Werte von FILE und Position, die später bei der Konfiguration des Slave-Servers verwendet werden.

mysql>show masterstatus; Bitte notieren Sie sich die angezeigten Informationen. Diese werden bei der Konfiguration des Slave-Servers verwendet.

+——————+———-+————–+——————

+|Datei|Position|Binlog_Do_DB|Binlog_Ignore_DB|

+——————+———-+————–+——————

+|mysql-bin.000001|253|dbispconfig|mysql|

+——————+———-+————–+——————+

1 Zeile im Satz (0,00 Sek.)

Auf dem Slave-Server:

1) Stellen Sie sicher, dass /etc/my.cnf die Parameter log-bin=mysql-bin und server-id=1 enthält, und ändern Sie server-id=1 in server-id=10. Nach der Modifikation sieht es so aus:

[mysqld]

log-bin=mysql-bin //Binärdatei starten server-id=10 //Server-ID

2) Starten Sie den MySQL-Dienst neu.

[root@localhost~]#mysqladmin-p123456shutdown

[root@localhost~]#mysqld_safe--Benutzer=mysql&

3) Melden Sie sich bei MySQL an und führen Sie die folgende Anweisung aus

[root@localhost~]#mysql-uroot–p123456

mysql>changemastertomaster_host='192.168.48.128',master_user='Sicherung',master_password='Sicherung',master_log_file='mysql-bin.000003',master_log_pos=401;

4) Starten Sie die Slave-Synchronisierung.

mysql>Slave starten;

5) Überprüfen Sie die Master-Slave-Synchronisierung. Wenn Sie sehen, dass sowohl Slave_IO_Running als auch Slave_SQL_Running „Ja“ lauten, ist die Master-Slave-Replikationsverbindung normal.
mysql> show slave status\G

Überprüfen Sie, ob die Konfiguration normal ist und ob der MySQL-Master-Slave normal repliziert werden kann.

Erstellen Sie eine neue Datenbank auf der Hauptdatenbank und schreiben Sie eine Tabelle und einige Daten in die Datenbank.

[root@localhost~]#mysql -u root –p 123456

mysql>Datenbank mysqltest erstellen;

mysql>mysqltest verwenden;

mysql>Tabelle erstellen Benutzer(idint(5),namechar(10));

mysql>in Benutzerwerte einfügen (00001,'zhangsan');

Überprüfen Sie anhand der Datenbank, ob die Daten normal kopiert werden.

[root@localhost~]#mysql -u root –p 123456

mysql>Datenbanken anzeigen;

mysql>wählen Sie * aus mysqltest.user aus;

Das könnte Sie auch interessieren:
  • Konfigurationsschritte für die MySQL-Master-Slave-Synchronisierung und die Trennung von Lesen und Schreiben
  • Ein Artikel zum Verständnis der MySQL Master-Slave-Replikation und der Lese-/Schreibtrennung
  • Detaillierte Erläuterung der Konfigurationsmethode der Lese-/Schreibtrennung bei der MySQL-Master-Slave-Replikation
  • Detaillierte Erläuterung der Konstruktion der Lese-/Schreibtrennung bei der MySQL-Master-Slave-Replikation
  • Detaillierte Erläuterung der Prinzipien und der Verwendung der MySQL-Master-Slave-Replikation und der Lese-/Schreibtrennung
  • Ein ausführliches Tutorial zur Master-Slave-Replikation und Lese-/Schreibtrennung der MySQL-Datenbank

<<:  JavaScript implementiert Klicken zum Ändern der Bildform (Transformationsanwendung)

>>:  Bedeutung und Verwendung einer Linux-CD

Artikel empfehlen

Seltsame und interessante Docker-Befehle, die Sie vielleicht nicht kennen

Einleitung Stellt einige einfache und praktische ...

So führen Sie das Springboot-Projekt im Docker aus

1. Klicken Sie unten in IDEA auf Terminal und geb...

40 Webseiten-Designs mit supergroßen Schriftarten

Heutige Webdesigns neigen dazu, sehr große Schrif...

So installieren Sie die Linux-Onlinesoftware gcc online

Befehle zur Linux-Onlineinstallation: yum install...

W3C Tutorial (3): W3C HTML Aktivitäten

HTML ist eine Hybridsprache, die zum Veröffentlic...

So legen Sie Listenstilattribute in CSS fest (lesen Sie einfach diesen Artikel)

Eigenschaften des Listenstils Es gibt 2 Arten von...

Konfigurationsmethode für die VMware Kali-Umgebung virtueller Maschinen

1|0 Kompilieren Sie den Kernel (1) Führen Sie den...

Integrationspraxis des Vue+Element-Hintergrundverwaltungsframeworks

Inhaltsverzeichnis Vue+ElementUI-Hintergrundverwa...

Lösung zur Konvertierung in Inline-Styles in CSS (css-inline)

Sprechen Sie über die Szene E-Mail senden Einbett...

MySQL-Datenbank-JDBC-Programmierung (Java stellt eine Verbindung zu MySQL her)

Inhaltsverzeichnis 1. Grundvoraussetzungen für di...

Lösen Sie das Problem beim Laden der Vektorkartenquelle in OpenLayers 3

1. Vektorkarte Vektorgrafiken verwenden gerade Li...

Detaillierte Einführung in den MySQL-Datenbankindex

Inhaltsverzeichnis Mindmap Einfaches Verständnis ...