Ver o progresso e a conclusão estimada de backup / restore / CHECKDB
SQL ServerBackup e logComando
SELECT r.session_id, r.command, DB_NAME(r.database_id) AS db,
CAST(r.percent_complete AS DECIMAL(5,1)) AS pct,
DATEADD(SECOND, r.estimated_completion_time / 1000, GETDATE()) AS eta,
r.total_elapsed_time / 60000 AS elapsed_min,
r.wait_type, r.wait_time, r.blocking_session_id
FROM sys.dm_exec_requests r
WHERE r.percent_complete > 0;
-- Restore phases and throughput are in the error log:
EXEC sys.xp_readerrorlog 0, 1, N'Restore';O que faz
Mostra o progresso percentual, o horário estimado de término e a espera atual de operações longas que reportam percent_complete (BACKUP, RESTORE, DBCC CHECKDB/SHRINK, ALTER INDEX REORGANIZE, rollback após KILL).
Quando usar
Quando o backup noturno avança pelo horário comercial, para responder "quando vai terminar" durante um restore grande ou para acompanhar o rollback de uma sessão morta.
Atenção
A estimativa assume progresso linear; durante as fases de redo/undo de um restore e durante a inicialização com zeros do log, o percentual pode ficar parado por muito tempo. Arquivos de log não se beneficiam de instant file initialization (exceto crescimentos de até 64 MB no 2022); restores com logs grandes passam muito tempo na primeira fase. Consulta somente leitura; segura.