Tom: Gibt es ne Möglichkeit,Datenbankveränderungen zu protokollieren?

Beitrag lesen

Hello,

Welche Möglichkeiten gibt es, Datenbankveränderungen zu protokollieren?

Was für eine Datenbank?

Gute Datenbanksysteme führen ein Transaktionslog, mit dessen Hilfe sich jeder Zustand seit der letzten Vollsicherung wiederherstellen lässt.

Auch MySQL kennt ein Binary Log. Wenn Du das eisnchaltest, wird das DBMS aber langsamer und die Platte wird relativ schnell voll.

http://dev.mysql.com/doc/refman/5.0/en/binary-log.html

Alternativ kannst Du den Direktzugriff auf Tabellen unterbinden und dafür Stored Programms erstellen. In diesen Programms/Procedures werden dann sowohl die von Dir vorbereiteten Zugriffe durchgeführt, als auch ein von Dir vorgesehenes Logging betrieben. Ob Du dann nur den Aufruf des Statements nebst einigen Verwaltungsinformationen abspeicherst, oder eine Datenhistorie führst, das ist dann Dir überlassen.

Sowas lässt sich aber nicht in fünf Minuten einrichten, sondern muss im Datenbankdesign berücksichtigt werden. I.d.R. macht man sowas nicht nachträglich, sondern plant es weise voraus, bevor man anfängt zu Coden.

Es gab hier neulich erst einen Thread zu diesem Thema.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de