Heim >Datenbank >MySQL-Tutorial >Praktische MySQL-Clusterkonstruktion (2) – Implementierung der Master-Slave-Replikation der MySQL-Datenbank
Im Anschluss an den vorherigen Artikel „Praktischer MySQL-Clusteraufbau (1) – Binäre Installation von MySQL-5.6 unter Centos7“ stellt dieser Artikel vor, wie der Hauptdatenbankserver Daten in Form von Protokolldateien auf einem anderen Server sichert .Server: Auf diese Weise kann die Master-Slave-Replikation der Datenbank realisiert und eine sichere Datensicherung erreicht werden.
Für Hauptbibliotheksvorgänge:
1. Aktivieren Sie die Log-bin-Funktion auf dem Master:
# vi /etc/my.cnf 添加如下内容: log_bin=mysql-bin server_id =1
2. Starten Sie MySQL neu
# /etc/init.d/mysqld restart
3. Melden Sie sich bei MySQL an, um ein Konto auf dem Masterserver zu erstellen und zu autorisieren die Slave-Funktion
#mysql –uroot –p mysql> grant replication slave on *.* to 'mysql'@'%' identified by 'mysql'; mysql> flush priviliges; mysql> flush tables with read lock;
Wenn vor diesem Vorgang Daten sowohl in der Master- als auch in der Slave-Datenbank vorhanden sind, können Sie natürlich zurückkehren Der Vorgang ist wie folgt:
1. Fügen Sie den Befehl mysqldump zu /usr/bin hinzu
ln -s /application/mysql/bin/mysqldump /usr/bin/
2. Verwenden Sie den Befehl mysqldump zum Sichern die Master-Server-Datenbank:
# mysqldump -uroot -p -A --master-data=1 > /tmp/master_16-09-12.sql
3. Nachdem die Sicherung abgeschlossen ist, setzen Sie den Schreibvorgang fort:
# mysql> unlock tables;
Vorgang aus der Datenbank
1. Stoppen Sie den Slave-Synchronisationsvorgang
MySQL> Slave stoppen;
2. Ändern Sie die Konfigurationsdatei der Slave-Bibliothek
# vi /etc/my.cnf log_bin=mysql-bin server_id = 2
3 . Importieren Sie die Datei master_16-09-12.sql in die Slave-Bibliothek
# mysql -uroot -p < master_16-09-12.sql
4 >
mysql> change master to master_host="主服务器IP", master_user="mysql", master_password="mysql";
6. Überprüfen Sie den Slave-Server-Status
mysql> start slave; mysql>quit; #/etc/init.d/mysqld restart
mysql> show slave status\G;
geklont Implementiert Auf diese Weise ist ein Fehler aufgetreten:
Master und Slave haben gleiche MySQL-Server-UUIDs Lösung
Dies liegt daran, dass während des Serverkopiervorgangs auch das gesamte Datenverzeichnis der Datenbank kopiert wird, sodass auto.cnf in dieser Datei vorhanden ist. die die Datenbank-UUID speichert. Die UUID jeder Datenbank sollte unterschiedlich sein.
Das Obige ist die eigentliche MySQL-Clusterkonstruktion (2) – der Inhalt der Master-Slave-Replikation der MySQL-Datenbank. Weitere verwandte Inhalte finden Sie hier. Bitte beachten Sie die chinesische PHP-Website (www.php.cn)!