Существует ли сценарий SQL, который я могу использовать для определения прогресса резервного копирования SQL Server или процесса восстановления?

92
задан Trisped 20 May 2016 в 17:28
поделиться

4 ответа

Да. Если Вы установили sp_who2k5 в Вашу основную базу данных, можно просто работать:

sp_who2k5 1,1

набор результатов будет включать все активные транзакции. В настоящее время рабочее резервное копирование (копирование) будет содержать строку "РЕЗЕРВНОЕ КОПИРОВАНИЕ" в поле requestCommand . Точно именованный поле percentComplete даст Вам прогресс резервного копирования.

Примечание: sp_who2k5 должен быть частью общего инструментария, он делает намного больше, чем просто это.

11
ответ дан Portman 24 November 2019 в 06:23
поделиться

Используйте СТАТИСТИКУ в Команде резервного копирования, если это - просто сценарий.

Внутренний код это немного более сложно. В ODBC, например, Вы устанавливаете SQL_ATTR_ASYNC_ENABLE и затем ищете код возврата SQL_STILL_EXECUTING и делаете некоторые повторные вызовы SQLExecDirect, пока Вы не получаете SQL_SUCCESS (или eqiv).

4
ответ дан David L Morris 24 November 2019 в 06:23
поделиться

Я нашел этот демонстрационный сценарий здесь , который, кажется, работает вполне прилично:

SELECT r.session_id,r.command,CONVERT(NUMERIC(6,2),r.percent_complete)
AS [Percent Complete],CONVERT(VARCHAR(20),DATEADD(ms,r.estimated_completion_time,GetDate()),20) AS [ETA Completion Time],
CONVERT(NUMERIC(10,2),r.total_elapsed_time/1000.0/60.0) AS [Elapsed Min],
CONVERT(NUMERIC(10,2),r.estimated_completion_time/1000.0/60.0) AS [ETA Min],
CONVERT(NUMERIC(10,2),r.estimated_completion_time/1000.0/60.0/60.0) AS [ETA Hours],
CONVERT(VARCHAR(1000),(SELECT SUBSTRING(text,r.statement_start_offset/2,
CASE WHEN r.statement_end_offset = -1 THEN 1000 ELSE (r.statement_end_offset-r.statement_start_offset)/2 END)
FROM sys.dm_exec_sql_text(sql_handle))) AS [SQL]
FROM sys.dm_exec_requests r WHERE command IN ('RESTORE DATABASE','BACKUP DATABASE')
214
ответ дан DtechNet 24 November 2019 в 06:23
поделиться
3
ответ дан Pavel Chuchuva 24 November 2019 в 06:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: