Wednesday, July 11, 2012

Backup and Restore Database status indicator


-- Backup and Restore Database status indicator
 
SELECT [spid] = r.session_id,
    substring(t.[text],charindex('[',t.[text],1)+1,(charindex(']',t.[text],1)-charindex('[',t.[text],1))-1) restore_db, r.start_time,
 percent_complete = round(r.percent_complete,2),
 DATEDIFF(mi,r.start_time,getdate()) 'elapsed_time (min)',
    r.[status],
    r.command,
    t.[text] sql_text,
case r.percent_complete
when 0 THEN 1  
else DATEADD(mi,round(DATEDIFF(mi,r.start_time,getdate())/(r.percent_complete/100),0),r.start_time) 
end as 'estimated_completion'
FROM
    sys.dm_exec_requests AS r
CROSS APPLY
    sys.dm_exec_sql_text(r.[sql_handle]) AS t
WHERE
    r.session_id <> @@SPID
    AND r.command in ('RESTORE DATABASE','BACKUP DATABASE')

No comments:

Post a Comment