Ich muss die gelöschten Datensätze (Zeilen) aus einer SQL-Server-Tabelle anzeigen, tatsächlich verwende ich diesen Befehl
%Vor%um das Protokoll anzuzeigen, aber ich verstehe das Ausgabeformat nicht.
gibt es ein kostenloses Werkzeug, um die Log-Datei einer Sql-Server-Datenbank zu übersetzen oder eine Dokumentation, wie die Information interpretiert wird, die durch den Befehl DBCC LOG
Ich benutze SQL Server 2008.
AKTUALISIEREN
Mein Ziel ist nicht, die gelöschten Datensätze wiederherzustellen, ich möchte nur die gelöschten Datensätze sehen oder den Löschbefehl ausführen.
Vielen Dank im Voraus.
Es kann als eine Lernübung durchgeführt werden, obwohl die Dokumentation dünn ist. Ich habe ein Beispiel für eine Löschung vor, sowie ein Update und ein paar andere Elemente aus dem Protokoll entschlüsselt.
Angesichts der Länge der Erklärung ist es nicht angemessen, sie hier einfach neu zu veröffentlichen.
Daten, die Sie von DBCC LOG erhalten, sind im HEX-Format und Sie müssen sie konvertieren, um lesbar zu werden.
Sie können auch versuchen, die Funktion fn_dblog zu verwenden, um das Transaktionslog zu lesen, aber Sie erhalten so ziemlich die gleichen Ergebnisse, die entschlüsselt werden müssen.
Es gibt auch ein Tool von Drittanbietern ApexSQL Protokoll, das Transaktionslog lesen und alle protokollierten Befehle anzeigen kann, aber es kommt mit ein Preis.
Hier finden Sie eine Schritt-für-Schritt-Anleitung mit dem gesamten SQL-Code, der zum Lesen des Online-Transaktionsprotokolls der Datenbank mit der undokumentierten SQL-Funktion fn_dblog
bereitgestellt wurdeTags und Links sql-server sql-server-2008