MySQL / MariaDB – Replikation – Relay log read failure: Could not parse relay log event entry.

Bei einer Master-Slave-Replikation vom MySQL bzw. MariaDB kann es unter bestimmten Vorraussetzungen zu folgenden Fehlerbild kommen.

Die Replikation funktioniert nicht mehr, weil das entsprechenden Relay-Log-File defekt ist.

Relay log read failure

Nach der Eingabe von

Erscheint folgende Fehlermeldung:

Die passiert unter anderem wenn das Slave-System unkontrolliert beendet wurde, das kann z.B. bei einem Reset des Servers der Fall sein. Das Relay-Log wird nicht vollständig auf die Platte geschrieben wie es bei einem normalen Stop des Datenbankservers der Fall gewesen wäre. Der „Datenmüll“ ist nun für unser Slave-Server nicht mehr verwertbar und eine Replikation ist somit nicht mehr möglich.

Retten können wir das System folgendermaßen.

Zuerst stoppen wir den Slave

und lassen wir uns nochmals alle wichtigen Informationen zum Status der Replikation ausgeben.

Wichtig sind für uns nun die Einträge Relay_Master_Log_File und Exec_Master_Log_Pos diese solle man sich genau notieren.

Nun setzen wir den Slave zurück und löschen somit alle Relay-Logs.

Jetzt Konfigurieren wir den Slave neu und setzten genau an der Stelle an, an der die Replikation abgebrochen wurde. Dazu benötigen wir die notierten Werte Relay_Master_Log_File und Exec_Master_Log_Pos.

In unserem konkreten Fall ist das

Nach dem die Replikation wieder gestartet wurde sendet uns der Master wieder ein entsprechendes Binär-Log und die Replikation sollte wieder wie gewohnt laufen.

Wie immer lohnt auch ein Blick in die Dokumentation von MySQL.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.