Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SQL2008_Administration.doc
Скачиваний:
90
Добавлен:
08.11.2018
Размер:
3.38 Mб
Скачать

6.2. Работа с заданиями sql Server Agent

Задания (jobs) — это именованные наборы действий, которые можно запланировать для выполнения по расписанию. Задания могут создаваться и в автоматическом режиме, например, при настройке доставки журналов или репликации.

Для создания нового задания:

  1. Раскрыть котейнер Jobs (Задания) в SQL Server Agent;

  2. Из контекстного меню для этого контейнера выбрать команду New Job. Откроется окно, аналогичное представленному на рис. 6.1;

  3. Настроить свойства задания.

Рис. 6.1. Окно свойств задания SQL Server Agent

Для копирования задания с одного сервера на другой:

  1. Выбрать задание, для которого необходимо создать копию;

  2. В контекстном меню для этого задания выбрать команду Script Job As (Отскриптовать задание как)  CREATE TO  New Query Editor Window (Новое окно редактора запросов). В окно редактора кода будет загружен скрипт с командами на создание задания с аналогичными параметрами;

  3. Исправить некоторые параметры в скрипте, сохранить его и запустить на выполнение на другом сервере.

Данным способом можно воспользоваться и для получения информации о хранимых процедурах, которые можно использовать для создания заданий из кода Transact-SQL.

6.2.1. Параметры заданий.

На вкладке General (Общие) вы можете настроить или просмотреть общие параметры для задания:

  • Name (Имя)  - Имя для создаваемого задания. Используйте любое удобное для вас словосочетание

  • Owner (Владелец) - владелец данного задания. По умолчанию владельцем становится тот, кто это задание создал. Информация о владельце обычно используется для определения прав, с которыми задание может выполняться

  • Category (Категория) - используется для группировки заданий и для сортировки при отображении заданий в Management Studio

  • Description (Описание) - описание задания

  • Enabled (Включено) - если задание в настоящее время вам не нужно, но может потребоваться в будущем, вы можете просто снять этот флажок. Отключенное задание выполняться не будет. Можно также отключить расписание для этого задания

  • Source (Источник) - сервер, который запускает данное задание на выполнение (master server). Этот параметр используется только для мультисерверных заданий

  • Created (Создано) - время создания задания

  • Last modified (Изменено в последний раз) - время последнего изменения задания

  • Last Executed (Запускалось в последний раз) - Время последнего запуска на выполнения задания

6.2.2. Параметры этапов заданий.

На вкладке Steps (Этапы)  определяются этапы (steps), то есть действия, из которых состоит задание. Само создание этапа производится при помощи кнопки New (Новый). Вам потребуется указать имя создаваемого этапа и выбрать его тип.

Типы этапов:

  • Replication - задания с такими этапами создаются автоматически при настройке репликации;

  • ActiveX Script (Скрипт ActiveX) - при помощи этого типа задания вы можете сделать на SQL Server и в ОС абсолютно все (включая возможности любых других типов этапов). Для работы с SQL Server в вашем распоряжении — объектные модели SQL-DMO, SMO и поставщика WMI для SQL Server, для работы с ОС — объектные модели Windows Script Host, Scripting Runtime, WMI и т.п.;

  • Operation System (CmdExec) (Команда операционной системы) - этот тип задания позволяет выполнить какую-либо команду из командной строки ОС (и проверить для нее код возврата). Обычное применение этапов этого типа — копирование файлов в операционной системе, отправка электронной почты из командной строки, подключение сетевых дисков и т.п.;

  • Transact-SQL Script (T-SQL) (Скрипт Transact-SQL) - тип этапа по умолчанию. Он позволяет выполнить на сервере набор команд Transact-SQL. Как и при помощи скриптов ActiveX, при помощи этапа этого типа также можно сделать абсолютно все. Доступ к обычным объектным моделям Windows из кода Transact-SQL можно получить при помощи хранимых процедур автоматизации (SP_OACREATE, SP_OAMETHOD и т.п.), а к сборкам .NET можно обратиться при помощи новой возможности SQL Server 2008 — CLR integration. Чаще всего этот тип этапа используется для резервного копирования баз данных, проверки целостности с использованием команд DBCC, дефрагментации и перестроения индексов и т.п.;

  • SQL Server Integration Services Package (Пакет SQL Server Integration Services) - возможность выполнить по расписанию пакет SSIS. Функциональность пакетов SSIS также очень велика;

  • SQL Server Analysis Services Command (Команда SQL Server Analysis Services) и SQL Server Analysis Services Query (Запрос SQL Server Analysis Services)  - возможность выполнить, соответственно, команду или запрос к Analysis Services (ядру баз данных OLAP на SQL Server).

Свойства этапов:

  1. Вкладка General (Общие):

  • Run as (Запустить как) — возможность запустить этап от имени определенной учетной записи. В списке будут доступны SQL Agent Service Account и учетные записи-прокси, которые созданы для этапа данного типа из контейнера SQL Server AgentProxies (Прокси).

  1. Вкладка Advanced (Дполнительно):

  • On success action (Действие при успехе) и On failure action (Действие при сбое) — возможность определить, соответственно, что должно произойти после успешного или неуспешного (возникла ошибка) выполнения этого этапа. В вашем распоряжении — три варианта (они одинаковые как для успешного завершения, так и для неуспешного):

  • Go to the next step (Перейти к следующему этапу). Этот вариант используется по умолчанию для успешно завершившихся этапов;

  • Quit the job reporting success (Выйти из задания, просигнализировав об успешном выполнении). Этот вариант предлагается использовать для последнего этапа, если он завершился успешно;

  • Quit the job reporting failure (Выйти из задания, просигнализировав об ошибке). Это значение по умолчанию предлагается выбирать при возникновении ошибки в ходе выполнения этапа.

  • Retry attempts (Попытки повтора) — сколько раз SQL Server Agent будет пытаться повторить выполнение данного этапа, если сразу выполнить его не удалось;

  • Retry intervals (Интервал повтора) — какая пауза будет сделана SQL Server Agent между попытками повторного выполнения (в минутах);

  • Output file (Файл вывода) — текстовый файл, в который будет записываться то, что возвращают команды, определенный для этапа (Transact-SQL и CmdExec).

  • Append output to existing file (Дописать результат к существующему файлу) — обычно используется в тех случаях, когда вы хотите накапливать результаты выполнений этапов в каком-то файле;

  • Log to table (Запротоколировать в таблицу) — возможность записать протокол выполнения этапа в специальную таблицу sysjobstepslogs в базе данных MSDB. Кнопка View (Просмотр) справа от этого флажка позволяет просмотреть текстовый файл, который вы определили выше (работает только при подключении к SQL Server 2000);

  • Append output to existing entry in table (Добавлять вывод к существующим записям в таблице) — если этот флажок установлен, то при каждом запуске задания в таблицу sysjobstepslogs будут добавляться новые строки. Если он снят, то при этом еще и будут удаляться все существовавшие перед этим записи.

  • Include step output in history (Включать вывод этапа в историю) — если этот флажок установлен, то вывод этапа (например, результат выполнения команд Transact-SQL) будет дописываться в таблицы истории выполнения заданий. В результате размер базы данных MSDB может существенно возрасти.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]