Wir verwenden SQL 2005 Express Edition. Wir möchten die Daten aus der LDF-Datei lesen, um einige gelöschte Datensätze wiederherzustellen.
Wir haben versucht, eine Testversion von ApexSQL zu verwenden, die uns sehr geholfen hat. Anstatt Software von Drittanbietern zu verwenden, versuchen wir herauszufinden, wie die Protokolldatei selbst gelesen werden kann.
Wie können wir Daten aus der LDF-Datei lesen und wiederherstellen?
sql-server
sql-server-2005
backup
restore
recovery
goofyui
quelle
quelle
Antworten:
Sie benötigen eine vorherige vollständige Sicherung und alle Protokollsicherungen, die seit der letzten vollständigen Sicherung erstellt wurden
1) Machen Sie einen Abschluss der Protokollsicherung
2) Transaktion für gelöschte Datensätze suchen (Operation ist LOP_DELETE_ROWS für DELETEs und LOP_SET_BITS & LOP_MODIFY_ROW für eine TRUNCATE TABLE)
3) Stellen Sie die vorherige vollständige Sicherung wieder her und protokollieren Sie die Sicherungen sowie den Endpunkt in einer neuen Datenbank MIT NORECOVERY und STOPAT = 'Kurz vor Beginn der Transaktion'.
In diesem Blog- Beitrag wird detaillierter beschrieben, wie Sie mithilfe von fn_dblog die Zeit zum STOPATEN finden. In diesem Blog- Beitrag wird versucht, Daten direkt aus dem Protokoll wiederherzustellen. Dies kann jedoch im Vergleich zu einem Zeitpunkt der Wiederherstellung sehr zeitaufwändig sein.
Auch dieser Blog- Beitrag von Robert L Davis enthält ein Beispiel für die Kombination von STOP und STANDBY, damit Sie den Status der Datenbanken zu verschiedenen Zeitpunkten abfragen können.
quelle