andreas : HEADER manipulieren

Beitrag lesen

Hi

Am Einfachsten ist es, alle Änderungen in deiner Applikation mitzuloggen.

Jede Änderung - in einer extra Tabelle? Ist das nicht aufwendiger als einfach mit Timestamp und neu einer Tabelle wo bei jeder Synchronisation der Zeitpunkt festgehalten wird, udn alles was danach geändert wurde auswählen und daraus SQL-Statementsmachen.

Ich hab sowas ähnliches mal gemacht. Du hast doch sicher sowieso einen Wrapper um mysql_query gelegt, oder?

Was bitte ist ein Wrapper?

Das ist immer ganz nützlich weil man dann den Rückgabecode überprüfen und eine Fehlerseite ausgeben kann und den PHP-Code der den Rückgabewert prüft nicht x-hundert mal im Skript stehen hat.
Und dort habe ich einfach überprüft, ob die Anfage ein INSERT, UPDATE, DELETE etc. ist, und wenn ja, habe ich sie in eine Datei geschrieben. Vorrausgesetzt die Datenbanken sind bereits synchron (das kannst du ja einmal mit mysqldump sicherstellen) kannst du danach diese Datei einfach mal in regelmäßigen Abständen auf dem anderen Host einspielen.

Nur wie mache ich das einspielen am besten, geht das mit den paar Inserts und Updates, wenn ich die übertragen und auf dem Server in eine Datei geschrieben habe mit

mysql -uUSERNAME -p DATENBANKNAME < filename.sql

???
Oder die Lösung daraus einen Array zu machen den ich dann Statement für Statement eintrage?

Ausserdem: MySQL unterstützt das was ich zuerst beschrieben habe auch von Haus aus. Wenn du also Zugriff auf die MySQL-Konfiguration hast, solltest du dir http://www.mysql.com/documentation/mysql/bychapter/manual_MySQL_Database_Administration.html#Update_log ansehen.

ich habe leider keinen Zugriff auf den MySQL Server direkt.

BTW: Ich hoffe du hast das Synchronisationsskript irgendwie geschützt. Nicht dass da jeder einfach so kommen und SQL-Kommandos ausführen kann.

Ist nicht über www erreichbar und Passwort-geschützt.

Grüße
  Andreas