Wie kann ich den Fortschritt / Status überprüfen, wenn ich einen Änderungsindex reorganisiere / neu aufbaue?
sql-server
sql-server-2012
dmv
nojetlag
quelle
quelle
Antworten:
Es ist wirklich schwer zu sagen, wie lange Ihre Neuerstellung dauern wird, da SQL selbst es im Voraus nicht genau weiß und Ihnen keine Schätzung geben kann.
Mit der folgenden Abfrage können Sie die dm_exec_requests-dmv verwenden, um anzuzeigen, wie lange die Indexwiederherstellung gedauert hat, und um zu überprüfen, ob in SQL tatsächlich keine Schätzung vorhanden ist:
Wenn es jedoch um eine echte Schätzung des Zeitaufwands geht, können Sie diesen schönen Blog-Beitrag lesen von sqlmunkee lesen, der dies mit den Worten "..es hängt davon ab" zusammenfasst:
Frustrierend, aber wahr, traurig.
quelle
Ich habe es geschafft, diesen Blog-Beitrag mit einem Magick-Skript zu finden, das angeblich die Aufgabe erledigt. Ich kann es nicht überprüfen, da dies für den von mir ausgeführten SQL Server 2014 anscheinend nicht funktioniert. Fragen Sie Blöcke ab, die auf eine gemeinsame Sperre warten. Vielleicht findet es jemand nützlich, also lasse ich es einfach hier.
quelle
Ich fand die akzeptierte Antwort oben gut, aber es fehlt eine entscheidende Sache: Befehlsstatus (z. B. ist der Befehl blockiert)
Diese einfache Auswahl zeigt den Status vorne und in der Mitte:
quelle