Heim > Datenbank > MySQL-Tutorial > So nutzen Sie die Replikationsfunktion von MySQL, um Datensicherung und Notfallwiederherstellung zu erreichen

So nutzen Sie die Replikationsfunktion von MySQL, um Datensicherung und Notfallwiederherstellung zu erreichen

WBOY
Freigeben: 2023-08-06 11:46:45
Original
942 Leute haben es durchsucht

So nutzen Sie die Replikationsfunktion von MySQL, um Datensicherung und Notfallwiederherstellung zu erreichen

Einführung:
MySQL ist ein häufig verwendetes relationales Datenbankverwaltungssystem. In praktischen Anwendungen werden häufig Datensicherung und Notfallwiederherstellung durchgeführt, um Datensicherheit und Hochverfügbarkeit zu gewährleisten erforderlich. Die Replikationsfunktion von MySQL kann Datensicherung und Notfallwiederherstellung erreichen. In diesem Artikel wird anhand von Codebeispielen erläutert, wie die Replikationsfunktion von MySQL zur Datensicherung und Notfallwiederherstellung verwendet wird.

1. Einführung in die Replikationsfunktion
Die Replikationsfunktion von MySQL wird über das Binärprotokoll (Binärprotokoll) implementiert. Einfach ausgedrückt zeichnet die Replikationsfunktion alle Schreibvorgänge der primären Datenbank im Binärprotokoll auf und gibt diese Vorgänge dann basierend auf den Informationen im Binärprotokoll aus der sekundären Datenbank wieder. Dadurch wird sichergestellt, dass die Daten der sekundären Datenbank mit den Daten übereinstimmen Primärdatenbank.

2. Richten Sie die Hauptdatenbank ein.

  1. Erstellen Sie ein Replikationskonto.
    Erstellen Sie zunächst ein Konto für die Replikation in der Hauptdatenbank. Mit der folgenden Anweisung können Sie ein Konto mit dem Namen repl in der Hauptdatenbank erstellen und dem repl-Konto Replikationsberechtigungen erteilen.
CREATE USER 'repl'@'%' IDENTIFIED BY 'password'; -- '%'代表允许来自任意IP地址访问
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;
Nach dem Login kopieren
  1. Binärprotokoll aktivieren
    Binärprotokoll in der Konfigurationsdatei (my.cnf) der Hauptdatenbank aktivieren. Fügen Sie der my.cnf-Datei die folgende Konfiguration hinzu:
log-bin=mysql-bin
Nach dem Login kopieren

Starten Sie dann den MySQL-Dienst neu.

  1. Status der Hauptdatenbank abrufen
    Verwenden Sie die folgende Anweisung, um die Statusinformationen der Hauptdatenbank für die spätere Verwendung abzurufen.
SHOW MASTER STATUS;
Nach dem Login kopieren

Notieren Sie die Werte der Felder „Datei“ und „Position“, die in der Datenbank verwendet werden.

3. Richten Sie die Slave-Datenbank ein.

  1. Richten Sie die Replikationskonfiguration der Slave-Datenbank ein.
    Konfigurieren Sie Folgendes in der Konfigurationsdatei der Slave-Datenbank (my.cnf):
server-id=2  -- 从数据库的唯一标识,不同数据库必须有不同的值
Nach dem Login kopieren

Starten Sie dann den MySQL-Dienst neu.

  1. Replikation starten
    Verwenden Sie die folgende Anweisung in der Slave-Datenbank, um die Replikation zu starten:
CHANGE MASTER TO
  MASTER_HOST='主库IP', -- 主数据库的IP地址
  MASTER_PORT=主库端口,  -- 主数据库的端口
  MASTER_USER='repl',
  MASTER_PASSWORD='repl账号的密码',
  MASTER_LOG_FILE='主库的File字段值',
  MASTER_LOG_POS=主库的Position字段值;

START SLAVE;
Nach dem Login kopieren

Verwenden Sie den Befehl SHOW SLAVE STATUS;, um den Replikationsstatus der Slave-Datenbank anzuzeigen, und stellen Sie sicher, dass die Felder Slave_IO_Running und Slave_SQL_Running beide Ja sind .

4. Datensicherungs- und Disaster-Recovery-Test

  1. Datensicherung
    Erstellen Sie eine Testtabelle in der Hauptdatenbank und fügen Sie einige Daten ein.
CREATE DATABASE test;
USE test;
CREATE TABLE tb_test (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20));

INSERT INTO tb_test (name) VALUES ('张三'),('李四'),('王五');

SELECT * FROM tb_test;
Nach dem Login kopieren

Überprüfen Sie dann in der Slave-Datenbank, ob die Daten in der Master-Datenbank automatisch synchronisiert werden.

  1. Disaster-Recovery-Test
    Die Simulation der Ausfallzeit der Hauptdatenbank kann durch Stoppen des MySQL-Dienstes der Hauptdatenbank simuliert werden.

Nachdem die Master-Datenbank angehalten wurde, arbeitet die Slave-Datenbank weiter und kann in der Slave-Datenbank lesen und schreiben.

Starten Sie nach Abschluss den MySQL-Dienst der Hauptdatenbank neu. Wenn die Hauptdatenbank wieder normal ist, synchronisiert die Slave-Datenbank automatisch die Daten der Hauptdatenbank.

5. Zusammenfassung
Durch die Replikationsfunktion von MySQL können wir problemlos Datensicherung und Notfallwiederherstellung erreichen. Das Einrichten der Master- und Slave-Datenbanken ist relativ einfach und erfordert nur wenige Konfigurationen und Befehle. Mithilfe der Replikationsfunktion können Sie die Datensynchronisierung zwischen der Master- und der Slave-Datenbank sicherstellen und sicherstellen, dass die Slave-Datenbank weiterarbeiten kann, wenn die Master-Datenbank ausfällt, wodurch die Systemverfügbarkeit verbessert wird.

Codebeispiel:

Das obige ist der detaillierte Inhalt vonSo nutzen Sie die Replikationsfunktion von MySQL, um Datensicherung und Notfallwiederherstellung zu erreichen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage