Auf meiner SQL Server 2012 x64 Std-Instanz hatte ich einen großen Transaktionsfehler, da das Transaktionsprotokoll gestern voll war. Es konnte nicht zurückgesetzt werden und SQL Server hat die spezifische Datenbank neu gestartet, um die Wiederherstellung durchzuführen.
Die Datenbank hat ungefähr 750 GB, wobei der Tlog 170 GB erreicht (sehr großer ETL-Job wurde ausgeführt). Der Job lief nur einige Stunden, aber die Wiederherstellung hat bisher> 24 Stunden gedauert (70% abgeschlossen, in Phase 3 von 3).
Was ich nicht verstehen kann, warum es so lange dauert? Es scheint keinen Druck auf die Festplatten zu geben, sys.dm_exec_requests
zeigt, dass sie warten PAGEIOLATCH_EX/SH
, was ich erwarten würde. Ich hätte in dieser Zeit die gesamte Datenbank wiederherstellen können ...
Wenn jemand Licht ins Dunkel bringen kann, wäre er sehr dankbar.
BEARBEITEN: Wie angefordert, wird die Ausgabe des Fehlerprotokolls abgerufen:
Recovery of database 'MyDB' (6) is 77% complete (approximately 28100 seconds remain). Phase 3 of 3. This is an informational message only. No user action is required.
Recovery of database 'MyDB' (6) is 77% complete (approximately 28095 seconds remain). Phase 3 of 3. This is an informational message only. No user action is required.
Recovery of database 'MyDB' (6) is 77% complete (approximately 28099 seconds remain). Phase 3 of 3. This is an informational message only. No user action is required.
Recovery of database 'MyDB' (6) is 77% complete (approximately 28102 seconds remain). Phase 3 of 3. This is an informational message only. No user action is required.
Recovery of database 'MyDB' (6) is 77% complete (approximately 28097 seconds remain). Phase 3 of 3. This is an informational message only. No user action is required.
Auch die sys.dm_exec_requests
Informationen, nach denen Sie suchen:
session_id command status percent_complete
35 DB STARTUP background 86.06061
IFI und "Volume Maintenance Tasks ausführen" aktiviert / gewährt.