Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Online/Offline-Datenbanksynchronisierung - MySQL/PHP

Ich verwende SymmetricDS, um Datenbanken zu synchronisieren. Es ist in der Lage, Daten zwischen Knoten (Servern/Datenbanken) zu synchronisieren oder zu replizieren, wobei nur die von Ihnen definierten Daten gepusht oder gezogen werden. Es ist eine auf Java basierende Software, sie hat eine steile Lernkurve, aber sie erfüllt wirklich ihren Zweck.

SymmetricDS kann so eingerichtet werden, dass Änderungen von einem Knoten auf die beiden anderen Knoten übertragen werden, wodurch sichergestellt wird, dass alle drei Knoten die gleichen Daten enthalten. Sie müssen sicherstellen, dass Primärschlüssel eindeutige Schlüssel sind und keine automatisch inkrementierten Werte, die von der Datenbank zugewiesen werden, da dies höchstwahrscheinlich ein Problem für die drei verschiedenen Datenbanken ist, die Sie synchronisieren möchten.

Die Software installiert Trigger in der Datenbank und erfasst Änderungen, wenn INSERT-, UPDATE- oder DELETE-Operationen (und andere) ausgeführt werden. Diese Datenänderungen werden dann auf den anderen Knoten aufgerufen. Die Software muss an jedem Standort laufen, benötigt aber keine ständig verfügbare Internetverbindung.

Anfangs machte ich mir Sorgen, dass Trigger an allen meinen Tischen die Leistung verlangsamen würden, aber das war überhaupt kein Problem. Ich kann nicht sagen, dass wir irgendwelche Leistungsprobleme entdeckt haben, nachdem die Trigger installiert wurden.

Sehen Sie sich http://symmetricds.org/ an für weitere Details.