Frage

Unser Test-DB plötzlich fehlt Reihen. Wir wollen sie zurück.

Gibt es eine Möglichkeit, durch alles zu sichten, die heute in die Datenbank geschehen? Jede SQL-Anweisung? Ich nehme diese Art von Sachen in das Transaktionsprotokoll ist, aber ich bin nicht sicher, wie Sie es sehen.

Gibt es eine Möglichkeit Löschvorgänge rückgängig zu machen?

BTW: Ja, tun wir ein Backup, aber würde es vorziehen, um die Ursache der Löschung zu finden und ...

War es hilfreich?

Lösung

Sie können dies tun, mit einigen Red Gate 's-Tools, aber es kostet. Schauen Sie sich auf SQL Log Rescue .

Ansonsten habe ich versucht sein würde, um eine Wiederherstellung zu tun.

Andere Tipps

[späte Antwort, aber hoffentlich nützlich]

Es gibt einen Weg gelöschten Zeilen wiederherstellen Transaktionsprotokoll verwenden, aber nur, wenn Sie 3rd-Party-Tools verwenden und nur Ihre Datenbank sind in vollem Recovery-Modus.

Dell (früher Quest) hat Toad for SQL Server und ApexSQL hat ApexSQL Log und ApexSQL Recover , die auch t-log und wiederherstellen von Daten lesen kann. Leider nur Log-Rettung von Red Gate kann die Protokolle auf SQL Server 2000 lesen.

Es gibt auch eine Art und Weise t-Protokoll mit undokumentierte dbcc log Befehl zu lesen. Mehr zum hier .

In Anbetracht Sie bereits Datenbanksicherungen haben Sie diese in separater Datenbank wiederherstellen und dann eine von vielen Datenvergleich-Tool verwenden, die auf dem Markt existieren fehlende Daten in der Produktion Datenbank einzufügen. Natürlich kann dies nur vor Daten löschen wiederherstellen eine Sicherung zu schaffen.

Sie benötigen ein Drittanbieter-Tool, dies zu tun. Das Werkzeug muss in der Lage sein, in die Transaktionsprotokolle zu gehen und die Log-Einträge sehen so können Sie sehen, was passiert ist. Ich habe nicht jedes dieser Werkzeuge verwendet, aber ich würde versuchen, Red Gate SQL Log Rescue für den Anfang. Probieren Sie es aus:

http://www.red-gate.com/products/SQL_Log_Rescue /index.htm

Ich würde geben ChronicDB einen Versuch, die eine kostenlose Version hat anstatt für Red Gate bezahlen

http://chronicdb.com/blogs/undelete_from_whoops

Sie können eine Transaktion rückgängig machen, indem Rollback Befehl in SQL Server. Aber Sie müssen die Transaktion wissen, kann rolledback werden, wenn die Transaktion innerhalb Begin Transaktion durchgeführt wurde.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top