In this short SQL Server DBA tutorial we will be looking at how to view the percentage (progress) of a job that is currently running in a Microsoft SQL Server database. From experience this method should work in SQL Server versions starting from SQL Server 2008 to the current version (SQL Server 2019). With no further a due please execute the script below on the database when a job is running, e.g Backup or a Restore.
select D.text, Re.Status, Re.Command, db_name(Re.database_id) DatabaseName, Re.cpu_time, Re.total_elapsed_time, Re.percent_complete from sys.dm_exec_requests Re cross apply sys.dm_exec_sql_text(Re.sql_handle) D
This is a quick and easy way to check the progress of your currently running jobs. Please note that this method might not work all the time base on the type of job that is running eg. An insert.