So reset (re-sync) MySQL Master-Slave-Replikation

So reset (re-sync) MySQL Master-Slave-Replikation

Manchmal erzeugt die MySQL -Replikation Probleme und Slave konnte nicht ordnungsgemäß vom Master -Datenbankserver synchronisiert werden. Es kann aus vielen Gründen verursachen. Nur die Frage ist, wie man es behebt?

In diesem Artikel werden Sie zum Zurücksetzen der MySQL -Replikation führen und er startet von Grund auf neu.

Warnung: Nachdem Sie dieses Tutorial verwendet haben, werden alle Ihre Bin-Log-Dateien gelöscht. Wenn Sie möchten, können Sie zuerst eine Sicherung von Bin-Log-Dateien ergreifen und dann die Anweisungen befolgen.

Bei Slave Server:

Zuerst müssen wir den Sklaven auf Slave Server anhalten. Melden Sie sich beim MySQL -Server an und führen Sie den folgenden Befehl aus.

MySQL> Stop Sklave; 

Bei Master Server:

Nach dem Anhalten von Slave gehen Sie zum Master Server und setzen.

MySQL> Reset Master; MySQL> Flush -Tische mit Leseschloss; 

[Hinweis: Hinzufügen einer Lesesperrung mit Produktionsstellen Hinzufügen. Lesen Sie mehr über die Tischsperrung]

Nehmen Sie eine Dump -Datenbank, die mit dem folgenden Befehl repliziert wird.

# mysqldump -u root -p mydb> mydb -dump.sql 

Nachdem die Sicherung die Tabellen auf dem Master Server entsperren konnte, entsperren Sie die Tabellen.

MySQL> Entsperren Sie Tabellen; 
Bei Slave Server:

Stellen Sie die Datenbanksicherung wieder her, die auf dem Slave -Server mit dem folgenden Befehl aufgenommen wurde.

# mysql -u root -p mydb < mydb-dump.sql 

Melden Sie sich bei MySQL an und führen Sie die folgenden Befehle aus, um den Sklavenstatus auch zurückzusetzen.

MySQL> Sklave zurücksetzen; MySQL> Master in master_log_file = "mysql-bin-bin ändern.000001 ", master_log_pos = 1; 

Nach dem Zurücksetzen der Sklavenstart Slave Replication

MySQL> Sklave starten; 

Jetzt wurde Ihre Replikation gleich wie neu konfiguriert. Sie können es mithilfe der folgenden Befehle überprüfen.

MySQL> Slave Status \ g anzeigen