Danke für die Antworten dedlfix.
Kann man so machen, ist aber quasi ein Medienbruch. Du musst nicht mehr nur mit PHP und MySQL hantieren sondern auch noch mit der Shell, wenn du das darüber machen willst. Du kannst auch in PHP/MySQL bleiben, indem du die Sicherung als weitere Tabelle(n) oder Datenbank(en) anlegst. Das Kopieren von Tabellen kann MySQL mit Bordmitteln und sehr wenig Aufwand erledigen, beispielsweise so:
CREATE TABLE backup_20090815 SELECT * FROM original
Das Rückspielen ist auch nicht schwerer:
DELETE FROM original oder TRUNCATE TABLE original (Die Nebenwirkungen beider Statements dürften dir vermutlich egal sein - vielleicht abgesehen vom auto_increment-Wert.)
INSERT INTO original SELECT * FROM backup_20090815
An die Bordmittel habe ich auch schon gedacht, nur hat mich bisher das einzelne kopieren von Tabellen zurückschrecken lassen (Das Projekt hat bisher > 50 Tabellen) aber ist wahrscheinlich der bessere Weg.
Wenn keine Sicherheitsargumente für eine Trennung sprechen, dann ist es üblicherweise besser alles in einer Tabelle zu haben. Die Unterscheidung macht man ja mit entsprechenden Bedingunen in der WHERE-Klausel.
Auch da bin ich deiner Meinung. Wenn sich nämlich die Tabellenstruktur ändert, müßte ich die Änderung x-mal für jeden User machen.
Gut, dann werde ich das mal angehen und umbauen...