2013-12-17 12 views
5

Situation:MySQL-Datenbank Multi-Master-Replikation auf dynamische IP-

Php-Anwendung mit MySQL-Datenbank

auf 2 Seiten laufen
  1. Online -static ip XXXX
  2. localhost (nicht online die meiste Zeit und dynamisch ip)

Anwendungsverkehr ist normalerweise niedrig < 10 Benutzer.

was ich brauche, ist, dass, wann immer eine Änderung an der Online-Datenbank vorgenommen wird, diese Änderung an localhost weitergegeben wird - wenn online oder wann immer verfügbar - und umgekehrt (alle lokal vorgenommenen Änderungen werden online in die Datenbank hochgeladen) es gibt Online-Verbindung).

ist es möglich, eine solche Replikation durch mysql einzurichten? oder muss ich eine benutzerdefinierte PHP schreiben, die Master-Server Ping und sobald es verfügbar ist

vielen Dank :).

+0

Irgendwelche Hinweise, warum Sie das Kopfgeld angeboten haben? Was ist unklar an den Antworten? – fancyPants

Antwort

3

Ja, Sie können dies mit der Replikation tun. Wählen Sie einfach den Server, den Sie als Master verwenden möchten, und senden Sie dem zweiten Server alle Änderungen an den Hauptserver, damit der Hauptserver seine Änderungen zurücksenden kann.

Replikation kann ein wenig entmutigend sein, aber sobald es hoch und läuft sein Gitter. http://dev.mysql.com/doc/refman/5.0/en/replication-howto.html

0

Sicher, Sie können
Sie müssen beide MySQL-Server als Master und Slave zur gleichen Zeit einrichten.
Konfigurieren Sie den Online-Server als Master und den Localhost-Server als Slave, und wenn die Replikation in Ordnung ist.
Konfigurieren Sie den Localhost als Master und den Online-Server als Slave.
Ich habe das schon auf zwei Servern gemacht.

Über die dynamische IP auf dem lokalen Host können Sie einfach jeden dynamischen IP-Dienst wie: no-ip verwenden und den DNS-Namen anstelle der IP verwenden.

0

Here's a post i've written (in Französisch, aber Sie können die Konfigurationsausschnitte davon erhalten) für die Einrichtung einer MASTER-MASTER-Replikation mit einem Load Balancer (MySQL Proxy) zum Ausgleich von SQL-Abfragen zwischen beiden Knoten.