MySQL Transaktionsprotokolle

gurbelunder

SQL-Guru
Beiträge
136
Moin Leute,

heute hab ich mal wieder nach langem eine Frage: Es muss doch by MySQL eine Art Transaktionsprotokoll geben, mit welchem ich einen Datensatz in einer Tabelle zurücksetzen kann? Wie kann ich das anstellen bei MySQL?

Achso, was helfen könnte: 5.0.72-enterprise-log MySQL Enterprise Server (Commercial)

Danke euch und Grüße,
David
 
Zuletzt bearbeitet:
Werbung:
Eigentlich brauche ich nur 5 Datensätze aus einer Tabelle von heute Morgen. Also schon PIT. Halt nur nicht komplett.

Ich denk mal eher schlecht.

Zum einen muß PIT vorher eingerichtet sein, zum anderen geht das nicht für eine Tabelle separat.

Wenn man sowas will (oh, ich hab vor 2 Stunden in Tabelle X leider 10 Millionen Rows gelöscht, wo bekommen wir DIE wieder her? ) sollte man sich VORHER ein Setup ausdenken, was das ermöglicht. Das können Logtabellen sein, die Änderungen protokollieren, oder eine zeitversetzte Replikation. Ich weiß z.B., daß Zalando in mehreren Stufen zeitversetzte Replikation macht.

Die InnoDB-Logfiles kannst Du für das, was Du willst, jedenfalls vergessen: "The ib_logfile* files do not contain queries, but rather 512-byte aligned instructions on how to re-apply changes made by queries" (Stackoverflow)
 
OK danke dir. Damit habe ich schon fast gerechnet. Das dümmste ist halt, dass die Anwendung, die die Änderungen in die Tabelle eingetragen hat, natürlich schön ein commit nach jeder Anweisung durchführt. Ist also auch nichts mit rollback...
 
Werbung:
Wenn es tatsächlich nur 5 Zeilen waren könnte man vieleicht mit einem dieser Tools zum lesen der binären Transaction Log irgendwie manuell raus suchen, versucht habe ich sowas aber noch nie. Generell würde ich auch sagen, doofe Idee...

http://dev.mysql.com/doc/refman/5.0/en/mysqlbinlog.html

Interessanter Ansatz. In meinem Fall wurden nur leider keine binlogs geschrieben.

Gelöst habe ich es an sich auch, allerdings auf anderem Wege: ich habe einfach aus einem Systembackup die Datendateien der Datenbank zum Zeitpunkt X wiederhergestellt. Hat auch super funktioniert.Ist halt nur schlecht, wenn die entsprechende Anwendung MySQl gleich mitbringt und leider auch nichts anderes kann. Ich muss mir hier mal eine Backupstrategie überlegen.

Danke euch und Grüße,
David
 
Zurück
Oben