Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Проблема в следующем:
МС SQL сервер 2014, имеются задания в Агенте сервера по архивному копированию рабочей базы, все работало до 6.03.2018, кто-то там занимался с сервером, даже просили не заходить какое-то время, и после этого перестали выполняться некоторые задания, НЕКОТОРЫЕ, одно задание как работало. так и работает, а два других не работают, даже когда вручную запускаю "Запустить задание на шаге". не запускается. Оно вроде как запускается, но висит до бесконечности, пока сам не сниму. Может что-то с Пользователем, от имени которого происходит запуск? Может прав каких не хватает? Почему не сообщает тогда об этом. Выдает сообщение: "Задание было остановлено до выполнения Пользователь (такой-то)... Запуск задания был произведен Расписание (такое-то)... Последним выполнявшимся шагом был шаг 1..." При этом архивный файл так и не создался (даже метка), хотя провисело запущенное задание (пока сам не снял) 7 ч 50 мин 41 сек.

Что может быть? Помогите!!!
8 мар 18, 11:45    [21244736]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Yasha123
Member

Откуда:
Сообщений: 1054
посмотрите, чего ждет задание.
sys.dm_os_waiting_tasks
8 мар 18, 11:58    [21244757]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Yasha123, а как запустить? Я в Менеджмент студио создаю sql запрос и выполняю, выдает ошибку.
8 мар 18, 12:05    [21244760]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5112
Mar_tin,

эти джобы вы сами делали или вам кто-то сделал?
у вас там DBA есть?
8 мар 18, 12:09    [21244763]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Дедушка,
сам делал, все работало прекрасно, я их и на других серверах тоже делал когда-то, такого не было никогда...
8 мар 18, 12:11    [21244766]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Дедушка, вот задание на архивирование

DECLARE @DBname VARCHAR(1000) -- название базы
DECLARE @path VARCHAR(1000) -- путь бекапа SQL
DECLARE @path2 VARCHAR(1000) -- путь архива rar
DECLARE @CMDStr VARCHAR(1000) -- строка команды для архивирования

-- параметры архивирования настраиваются здесь:
SET @path = 'D:\BACKUP\B\8_KA_' + CONVERT(VARCHAR(8),Getdate(),112) + '_' + REPLACE(CONVERT(CHAR(8),Getdate(),108),':','_')
SET @path2 = @path + '.rar'
SET @path = @path + '.bak'

-- удалим все предыдущие SQL бекапы, а текущий пусть останется до следующего запуска
SET @CMDStr = 'forfiles /P "D:\BACKUP\B" /M *.bak /S /D -0 /C "cmd /c del /q @path"'
EXEC xp_cmdshell
@CMDStr

-- название базы указать здесь!
BACKUP database [KA_] TO disk = @path

SET @CMDStr = '"RAR a -y -dh -ep -m2 -mt2 -rr[5] ' + @path2 + ' ' + @path
EXEC xp_cmdshell
@CMDStr
GO
8 мар 18, 12:16    [21244770]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Yasha123
Member

Откуда:
Сообщений: 1054
Mar_tin
Yasha123, а как запустить? Я в Менеджмент студио создаю sql запрос и выполняю, выдает ошибку.

select s.login_name,
wt.*
from sys.dm_os_waiting_tasks wt
join sys.dm_exec_sessions s
on wt.session_id = s.session_id
where s.is_user_process = 1 and s.session_id <> @@spid
order by wt.session_id;
8 мар 18, 12:20    [21244775]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Yasha123,

Сообщение 2809, уровень 16, состояние 1, строка 1
Выполнение запроса процедура "dm_os_waiting_tasks" окончилось неудачно, так как "dm_os_waiting_tasks" является объектом представление.

(строк обработано: 2)

Запрос завершен с ошибками.
8 мар 18, 12:22    [21244777]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Yasha123
Member

Откуда:
Сообщений: 1054
автор
-- удалим все предыдущие SQL бекапы, а текущий пусть останется до следующего запуска
SET @CMDStr = 'forfiles /P "D:\BACKUP\B" /M *.bak /S /D -0 /C "cmd /c del /q @path"'
EXEC xp_cmdshell
@CMDStr

вы вот этим удаляете все имеющиеся бэкапы.
т.е. на момент, когда еще новый не сделан,
у вас уже вообще ни одного бэкапа не осталось.
ну а теперь крэш.
и что будете делать?
8 мар 18, 12:24    [21244779]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Прошу прощения, там старая строка осталась было, удалил ее и выполнил, ошибок не показало больше, сейчас запущу задание и повторю...
отпишусь...
8 мар 18, 12:25    [21244784]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Yasha123
Member

Откуда:
Сообщений: 1054
Mar_tin
Yasha123,

Сообщение 2809, уровень 16, состояние 1, строка 1
Выполнение запроса процедура "dm_os_waiting_tasks" окончилось неудачно, так как "dm_os_waiting_tasks" является объектом представление.

(строк обработано: 2)

Запрос завершен с ошибками.

а не надо подсвечивать это бедное dm_os_waiting_tasks,
когда выполняете.
весь код выделяйте или вообще ничего не выделяйте, когда выполняете
8 мар 18, 12:25    [21244787]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Yasha123,
спасибо, вроде понял...щас проверю...
8 мар 18, 12:27    [21244788]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Нет, закомментировал эти строки, все-равно не запускается
8 мар 18, 12:35    [21244797]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Yasha123, вот результат при запущенном и висящем задании:

login_name waiting_task_address session_id exec_context_id wait_duration_ms wait_type resource_address blocking_task_address blocking_session_id blocking_exec_context_id resource_description
sa 0x000001C9B23B6108 59 2 687 BACKUPBUFFER NULL NULL NULL NULL NULL
sa 0x000001C998F324E8 59 0 48313970 ASYNC_IO_COMPLETION 0x0000000000000001 NULL NULL NULL NULL
NT SERVICE\SQLSERVERAGENT 0x000001C94A02A4E8 68 0 12191 LCK_M_U 0x000001C9C1AD1F80 0x000001C998F324E8 59 NULL databaselock subresource=BULKOP_BACKUP_DB dbid=5 lockPartition=0 id=lock1c9c7d86d80 mode=U
8 мар 18, 12:38    [21244801]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5112
Mar_tin,
Mar_tin
LCK_M_U 0x000001C9C1AD1F80 0x000001C998F324E8 59 NULL databaselock subresource=BULKOP_BACKUP_DB
последний абзац раздела Symptoms
8 мар 18, 13:13    [21244843]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Дедушка,

вот, переводчиком перевел последний абзац, ни о чем мне не говорит:

Вы также можете заметить, что эти команды сталкиваются с «wait_type = LCK_M_U» и «wait_resource = DATABASE: <id> [BULKOP_BACKUP_DB]», когда состояние этих команд просматривается из различных представлений динамического управления (DMV), например, из sys .dm_exec_requests или sys.dm_os_waiting_tasks.
8 мар 18, 15:48    [21245034]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Дедушка,
Странно, даже вручную не запускалось и вдруг запустилось, что-то с базой видимо, может занята была, а тут освободилась от чего-то.
То задание, которое само стартует, с базами не связано.
И с другими служебными базами тоже всегда вручную стартовало, там нет запуска по расписанию.

Что-то с рабочей базой, не с пользователем и не с правами...но вот что? люди работают с ней, как и всегда работали...
8 мар 18, 16:00    [21245043]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Yasha123
Member

Откуда:
Сообщений: 1054
Дедушка
Mar_tin,
Mar_tin
LCK_M_U 0x000001C9C1AD1F80 0x000001C998F324E8 59 NULL databaselock subresource=BULKOP_BACKUP_DB
последний абзац раздела Symptoms

короче говоря,
уже висит другой бэкап.
и все бэкапы данных(т.е. полный или дифф) выстраиваются в очередь,
ожидая завершение начатого до этого бэкапа.
т.е. вам надо разбираться с зависшим бэкапом
8 мар 18, 16:01    [21245044]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Yasha123
Member

Откуда:
Сообщений: 1054
Mar_tin
Нет, закомментировал эти строки, все-равно не запускается

тот мой коммент не про то,
почему не запускается,
а про то,
что нехорошо удалять все бэкапы еще до того,
как сделан очередной.
ибо в тот момент, когда все удалено, а нового еще нет,
вы вообще сидите без единого бэкапа.
и если сервер навернется в этот момент,
вы остаетесь без бэкапов
8 мар 18, 16:04    [21245045]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Yasha123
Member

Откуда:
Сообщений: 1054
Mar_tin
,
Странно, даже вручную не запускалось и вдруг запустилось, что-то с базой видимо, может занята была, а тут освободилась от чего-то.
...
Что-то с рабочей базой, не с пользователем и не с правами...но вот что? люди работают с ней, как и всегда работали...

ну так закончился тот бэкап, что до этого не давал выполняться остальным бэкапам
8 мар 18, 16:27    [21245065]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5112
Mar_tin
вот, переводчиком перевел последний абзац, ни о чем мне не говорит:
в конце статьи написана причина происходящего и даже приведён кусок кода
8 мар 18, 16:42    [21245073]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Yasha123,
Удаляются только файлы с расширением .bak с расширением .rar остаются, это нужно для того, чтобы не засорять огромными несжатыми файлами дисковое пространство, не дублировать с архивными такими же (размер бак файла 99 Ггб, а рар - 4.5 Ггб). Один несжатый файл остается на сутки, таким образом в течение всего дня я имею возможность, не разархивируя, иметь возможность восстанавливать его в тестовую базу, на следующий день будет всегда свежая утренняя копия базы, не надо тратить время (огромное) на разархивирование каждый раз при необходимости восстановления копии в тестовую базу (для моих отладочных работ).
9 мар 18, 00:02    [21245519]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Другими словами, раньше было так: после отработки РАРа, сразу же удалялась вак копия (этот текст я удалил),
теперь она остается до следующего копирования (а перед этим удаления), но остальные все удалятся (а кроме одной прошлой нечего удалять, других и не будет)
9 мар 18, 00:10    [21245522]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Mar_tin
Member

Откуда:
Сообщений: 17
Всем спасибо, все заработало, видимо причина была в удалении бак файла сразу же после его создания, что вызывало зависание.
9 мар 18, 09:27    [21245651]     Ответить | Цитировать Сообщить модератору
 Re: Задание было остановлено до выполнения ...помогите...я Программист 1С, не SQL-щик.  [new]
Yasha123
Member

Откуда:
Сообщений: 1054
для всех, кроме ТС (он упорно игнорирует, ну и черт с ним):
причина была в том, что одновременно не могут выполняться 2 бэкапа данных.
пока один выполняется, второй висит с ожиданием LCK_M_U subresource=BULKOP_BACKUP_DB
9 мар 18, 10:40    [21245705]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить