В SQL Server некоторые пользовательские запросы, выполняемые к той или иной базе данных могут не иметь информации о статусе выполнения в графической оболочке SQL Server Management Studio (SSMS).
Например, если в консоли SSMS администратор вызовет сжатие БД через графический интерфейс, то в окне выполнения задачи он может не увидеть процесс выполнения задачи.
В данном случае узнать статус выполнения задачи в процентном показателе можно запросом к базе вида:
SELECT [command] ,[start_time] ,[percent_complete] ,[estimated_completion_time] / 60000. AS [estimated_completion_time_min] FROM sys.dm_exec_requests WHERE [command] LIKE '%compact%'
Если мы не знаем, как называется выполняемая команда, то просто уберём последнюю строку, чтобы получить список всех выполняемых к БД запросов:
SELECT [command] ,[start_time] ,[percent_complete] ,[estimated_completion_time] / 60000. AS [estimated_completion_time_min] FROM sys.dm_exec_requests
Дополнительная информация:
Проверено на следующих конфигурациях:
Версия SQL Server | Версия SSMS |
---|---|
Microsoft SQL Server 2016 SP2 CU4 (13.0.5233.0) | Microsoft SQL Server Management Studio 17.9.1 |
Автор первичной редакции:
Алексей Максимов
Время публикации: 06.02.2019 11:41