MariaDB Master-Master-Replikation mit 3 Servern, keine Ports auf dem Master geöffnet

MariaDB Master-Master-Replikation mit 3 Servern, keine Ports auf dem Master geöffnet

Ich möchte drei MariaDB-Datenbankserver, einen Master und zwei „Slaves“. Ich möchte auf jedem Server lesen und schreiben können und dies auf den anderen Servern replizieren. Ich habe im Internet gelesen, dass dies „Master-Master-Replikation“ genannt wird.

Jetzt möchte ich auf meinem „echten“ Master-Server keine Ports öffnen, sondern nur auf den beiden „Slave“-Instanzen. Ist es möglich, dass der „echte Master“ die Sockets öffnet, sodass ich die Ports für eingehenden Datenverkehr auf dem ersten Server nicht öffnen muss?

Reproduzieren

Bearbeiten: Ich habe mehrere Datenbanken auf dem „Master“-Server und möchte nur einige dieser Datenbanken auf die „Slaves“ replizieren.

Antwort1

Schreiben Sie auf jeden Server und lassen Sie dies auf den anderen Servern replizieren

Dazu benötigen Sie eine "zirkuläre" Replikation zwischen allen 3 Servern.nichtempfehle es. Wenn ein Server ausfällt, ist es ein Albtraum, sie wieder zu synchronisieren.

Andererseits bietet Galera-Clustering (verfügbar in MariaDB) dies als Standard und kümmert sich um die Neusynchronisierung. Ich empfehle dringend, das, was Sie begonnen haben, aufzugeben und Galera einzurichten.

Was Firewalls, Tunneling, Reverse-SSH usw. betrifft, haben Sie nicht genügend Informationen zu den Systemen bereitgestellt. (Beachten Sie, dass die Replikate vom Primärserver „ziehen“, nicht umgekehrt.) Im Fall von Galera müssen auf allen Servern einige Ports geöffnet werden.

verwandte Informationen