Jak zresetować (ponownie synchronizację) Mysql Master-Slave Replikacja

Jak zresetować (ponownie synchronizację) Mysql Master-Slave Replikacja

Czasami replikacja MySQL stwarza problemy, a niewolnik nie może poprawnie zsynchronizować się z głównego serwera bazy danych. Może to spowodować z powodu wielu powodów. Tylko pytanie brzmi, jak to naprawić?

W tym artykule poprowadzi Cię do zresetowania replikacji MySQL i zacznie się od znowu od zera.

Ostrzeżenie: Po użyciu tego samouczka wszystkie pliki Bin-Log zostaną usunięte, więc jeśli chcesz, możesz najpierw wziąć kopię zapasową plików bin-log, a następnie postępować zgodnie z instrukcjami.

Na serwerze Slave:

Na początku musimy zatrzymać niewolnika na serwerze Slave. Zaloguj się do serwera MySQL i wykonaj następujące polecenie.

Mysql> Stop Slave; 

Na serwerze głównym:

Po zatrzymaniu Slave przejdź do serwera głównego i zresetuj stan główny za pomocą następującego polecenia.

mysql> reset master; MySQL> SPLUSH TABELE z Lock Read; 

[Uwaga: dodanie zamka odczytu z witryn produkcyjną. Przeczytaj więcej o blokowaniu tabeli]

Weź zrzut bazy danych jest replikowany za pomocą następującego polecenia.

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

Po przyjęciu kopii zapasowej odblokowania tabel na serwerze głównym.

Mysql> Odblokuj tabele; 
Na serwerze Slave:

Przywróć kopię zapasową bazy danych na serwerze Slave za pomocą następującego polecenia.

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

Zaloguj się do MySQL i wykonaj następujące polecenia, aby zresetować stan niewolników.

mysql> Reset Slave; mysql> Zmień master na master_log_file = "mysql-bin.000001 ", master_log_pos = 1; 

Po zresetowaniu niewolników rozpocznij replikację niewolników

mysql> start Slave; 

Teraz Twoja replikacja została ponownie zsynchronizowana tak samo jak nowo skonfigurowana. możesz go zweryfikować za pomocą następujących poleceń.

mysql> pokaż status niewolnika \ g