Ich habe vom Thema bis jetzt überhaupt keine Ahnung, also habe ich ganz unbedarft mal Google zum Thema befragt, aber da finde ich nur Widersprüche.
Von 5 Jahre alten Beiträgen auf der MySQL Seite die besagen, MyISAM unterstützt Rollback überhaupt nicht, samt Hinweis es sei ab Version 5.2 geplant gewesen aber wieder verworfen worden, bis zu Anleitungen, wie man eine Rollback Funktion selber machen kann, ohne interne Funktionen von MySQL zu bemühen.
Kurz gesagt, nach Google schaue ich noch dümmer als vorher.
Was ich gerne machen würde sieht etwa so aus:
Eine DB mit ca. 20 Tabellen, alle MyISAM.
Ein Script liest aus 3 davon und schreibt in 3 Andere, inkl. LOCK TABLES.
Dieses Script ist recht gross und es liest und schreibt so viele Einträge, dass es ca. 10 Sekunden braucht.
Jetzt würde ich gerne vorher den Zustand der 3 Schreib-Tabellen speichern, und bei Fehler dahin zurück gehen, Rollback halt.
Was ich dabei nicht verstehe ist:
1) Geht das überhaupt mit MyISAM und wenn ja, dann wie?
2) Wie funktioniert das grundsätzlich? Wenn die Verbindung zur DB mitten im Script verloren geht, kann ich ja via PHP nichts mehr machen, macht MySQL dann den Rollback automatisch?
Von 5 Jahre alten Beiträgen auf der MySQL Seite die besagen, MyISAM unterstützt Rollback überhaupt nicht, samt Hinweis es sei ab Version 5.2 geplant gewesen aber wieder verworfen worden, bis zu Anleitungen, wie man eine Rollback Funktion selber machen kann, ohne interne Funktionen von MySQL zu bemühen.
Kurz gesagt, nach Google schaue ich noch dümmer als vorher.
Was ich gerne machen würde sieht etwa so aus:
Eine DB mit ca. 20 Tabellen, alle MyISAM.
Ein Script liest aus 3 davon und schreibt in 3 Andere, inkl. LOCK TABLES.
Dieses Script ist recht gross und es liest und schreibt so viele Einträge, dass es ca. 10 Sekunden braucht.
Jetzt würde ich gerne vorher den Zustand der 3 Schreib-Tabellen speichern, und bei Fehler dahin zurück gehen, Rollback halt.
Was ich dabei nicht verstehe ist:
1) Geht das überhaupt mit MyISAM und wenn ja, dann wie?
2) Wie funktioniert das grundsätzlich? Wenn die Verbindung zur DB mitten im Script verloren geht, kann ich ja via PHP nichts mehr machen, macht MySQL dann den Rollback automatisch?