Entwickeln Sie einen MySQL-Knoten mit Percona

Entwickeln Sie einen MySQL-Knoten mit Percona

Ich wurde mit der Erstellung einer MySQL-Entwicklungsinstanz beauftragt. Wir haben derzeit einen Xtradb-Cluster mit 7 Knoten. Gibt es eine Möglichkeit, diesen Knoten ein paar Stunden hinterherzubekommen oder die Replikation zurück zum Rest des Clusters zu unterbinden? Ich würde es begrüßen, wenn er von den anderen Knoten aktualisiert würde, aber keine Replikation zurück zulässt.

Ich mache mir Sorgen, dass jemand einen Tisch fallen lässt oder nicht ganz so saubere Dinge tut und den Cluster zum Absturz bringt.

Alle Ideen sind sehr willkommen!

Antwort1

Stellen Sie einfach eine Verbindung Ihres Entwicklungsservers mithilfe der normalen Replikation her, nicht indem Sie ihn dem Cluster beitreten. Die Standardreplikation ist einseitig (es sei denn, Sie richten sie auf beiden Seiten ein). Ihr Entwicklungsserver würde die Binärprotokolle vom Master abrufen, von dem er als Slave ausgeführt wird. Das ist die gesamte Kommunikation, die zwischen der Entwicklungsinstanz und Ihrem Cluster stattfinden würde.

Ich glaube nicht, dass dies mit einem Knoten, der tatsächlich Teil des Clusters ist, einfach möglich wäre. Der Sinn des Clusters besteht darin, dass die Daten nicht asynchron sind.

Wenn Sie dies über eine Replikationsverzögerung tun möchten, sehen Sie sich Folgendes an:pt-Slave-Verzögerungwenn Sie 5.5 oder niedriger verwenden. Wenn Sie 5.6 verwenden, dannFunktionalität ist bereits eingebaut.

Die Art und Weise, wie ich das machen würde, würde überhaupt keine Replikation beinhalten. Sie sollten richtige Backups erstellen (ich bin ein Fan vonPercona Xtrabackup), dann können Sie dieses Backup einfach auf Ihrer Entwicklungsinstanz wiederherstellen. Machen Sie, was Sie wollen, und stellen Sie es dann erneut wieder her.

Wenn Sie dies über eine Replikation tun, werden Sie mehr Fehler bekommen, als Sie wahrscheinlich wollen. Wenn jemand eine Drop-Tabelle auf dem Dev-Host ausführt, wird die Replikation beim nächsten Versuch des Hauptclusters, diese Datei zu aktualisieren, unterbrochen. Sie müssen sie manuell neu starten (oder einenSkript, das das für Sie erledigt).

verwandte Informationen