Ver progresso de backups e restores em MSSQL

Por vezes acompanhar o processo de restore e backup de bases de dados MSSQL pode ser uma tarefa desafiante, o contador “default” que apenas regista o progresso a cada 10% concluídos, para ultrapassar esta dificuldade pode ser executada a seguinte query que vai repostar o estado atual do backup ou restore:

SELECT session_id as SPID, command, a.text AS Query, start_time, percent_complete, dateadd(second,estimated_completion_time/1000, getdate()) as estimated_completion_time

FROM sys.dm_exec_requests r CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) a

WHERE r.command in (‘BACKUP DATABASE’,’RESTORE DATABASE’)