Lorsqu’on lance un shrink database sur une base SQL Server, il n’y a pas d’indice de progression, et sur certaines bases importantes cela peut amener à quelques suées en voyant tourner le process sans savoir exactement où il en est.

Il est possible via dm_exec_requests de savoir où en est le process en cours. Cela donnera le pourcentage de complétion de la tâche, ainsi qu’une date approximative de fin. De quoi se rassurer définitivement.

La requête à lancer (adaptation d’une requête trouvée ici) est la suivante :

SELECT percent_complete, start_time, status, command, estimated_completion_time, cpu_time, total_elapsed_time
FROM sys.dm_exec_requests
where command = 'DbccFilesCompact'

Vous verrez alors votre tâche de shrink, avec en première colonne le pourcentage de complétion.