17 November,2012 by Tom Collins
Question: I’ve issued a DBCC SHRINKDATABASE on a 1.1 TB database. It’s been running awhile and business users are keen to know the estimated percent complete and estimated finish time . How can I find out this information?
Answer: Using the SQL Server DMV sys.dm_exec_requests , assists in estimating the finish time. The percent_complete and estimated_completion columns are useful.
While the DBCC SHRINKDATABASE is running – run the query below without the session_id.
Look for a record with DbccSpaceReclaim , DbccFilesCompact or DbccLOBCompact in the command column.
SELECT session_id,percent_complete,DATEADD(MILLISECOND,estimated_completion_time,CURRENT_TIMESTAMP) Estimated_finish_time, (total_elapsed_time/1000)/60 Total_Elapsed_Time_MINS , DB_NAME(Database_id) Database_Name ,command,sql_handle FROM sys.dm_exec_requests WHERE session_id=59
Shrink tempdb without sql server restart
SQL Server - Monitoring a Rollback and sys.dm_exec_requests ...
SQL Server - dm_exec_sql_text and Display text of SQL batch
This is only a preview. Your comment has not yet been posted.
As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.
Having trouble reading this image? View an alternate.
Posted by: |