Kalle_B: Partielles Backup: Geänderte DB-Datensätze erkennen

Beitrag lesen

Hallo Vinzenz,

Replikation nutzen.

Mache ich wohl schon. Der Ersatzserver sagt dem Hauptserver sein letztes last_modified, und der Hauptserver sendet alle IDs, die er hat. Und zu den neueren auch die Daten.

So kann der Ersatzserver erkennen, welche Sätze er löschen muss (er hat eine ID, der Hauptserver aber nicht) und welche zu übernehmen sind.

Klappt soweit ganz gut, auch mit Zeitdifferenzen kein Problem (wie bei den DAteien), weil der last_midified bisher ja immer vom Hauptserver stammt.

Wenn auf dem Ersatzserver auch gearbeitet werden darf, kommt die verflixte Zeitsynchronisation dazu, die ich bisher nicht lösen konnte. Wenn schon filemtime von Dateien Probleme macht (Zeitstempel bei Dateien), was weiss ich denn, was Server in das Feld last_modified eintragen.

Wikipedia:
"Von synchroner Replikation spricht man, wenn eine Änderungsoperation an einem Datenobjekt nur dann erfolgreich abgeschlossen werden kann, wenn sie auch auf den Replikaten durchgeführt wurde. Um dies technisch umsetzen zu können, ist ein Protokoll zur Gewährleistung der Atomarität (Unteilbarkeit) von Transaktionen anzuwenden, das Commit-Protokoll."

Eigentlich eine gute Idee, aber wenn einer der beiden Server ausgefallen ist, kann man auch auf dem anderen nicht mehr arbeiten, die Abhängigkeit wird um 100% grösser.

Klar, da muss man dann wieder die Ausnahme programmieren, geht mir aber im Moment zu weit.

Kalle