Как запускать последовательные задания по расписанию на сервере Sql - PullRequest
1 голос
/ 02 марта 2020

У меня есть требование, что мне нужно запустить несколько заданий в последовательности. Допустим, у меня есть 20 рабочих мест, которые уже существовали. Эти работы зависят друг от друга. Сейчас я запускаю эти задания вручную, как показано ниже:

запустить Job1 -> запустить job2 при успешном выполнении Job1 / выйти из следующего процесса при сбое Job1 -> запустить job3 при успешном выполнении Job2 / выйти из следующего процесса при сбое Job2 - > .... запустить job20 при успехе Job19 / выйти из следующего процесса при сбое Job19 -> Выйти из задания.

Наряду с этим я хочу иметь историю журналов для всех этих работ. Если какая-либо работа не удалась в середине пути, я хочу проверить журнал, чтобы найти, какая работа потерпела неудачу и какова причина сбоя.

Теперь я хочу сделать это автоматически c. Есть ли возможный способ сделать это?

Пожалуйста, помогите мне

Заранее спасибо, Чандана

Ответы [ 2 ]

1 голос
/ 05 марта 2020

Я предполагаю, что когда вы говорите «работа», вы имеете в виду SQL Работа агента сервера.

Один из способов достижения sh того, что вам нужно, - просто использовать sp_start_job сохраненный процедура.

  1. Для каждого задания добавляйте на шаге sql задание.
  2. Убедитесь, что это последний шаг
  3. Затем выполните код ниже

    EXE C msdb.dbo.sp_start_job Имя следующего запуска для запуска '

Вот изображение этой настройки : enter image description here

После этого вы можете последовательно менять задания и запускать последний шаг задания 2, запуск задания 3 и так далее ...

0 голосов
/ 03 марта 2020

вы можете использовать план обслуживания.

в этом перо вы можете задать любую работу для пошагового ИЛИ установить If оператор.

на этом рисунке я покажу вам неполное отображение план обслуживания: enter image description here

Для создания планов обслуживания или управления ими вы должны быть членом предопределенной роли сервера sysadmin. В обозревателе объектов отображается узел «Планы обслуживания» только для пользователей, которые являются членами предопределенной роли сервера sysadmin.

вы можете прочитать КАК СОЗДАТЬ ПЛАН ОБСЛУЖИВАНИЯ ЗДЕСЬ

...