Программирование >>  Администрирование microsoft sql 

1 ... 130 131 132 [ 133 ] 134 135 136 ... 203


Реализация заданий .

Задания Gobs) позволяют выполнять стандартные административные функции (например резервное копирование БД или импорт данных) по расписанию или в ответ на определенные события и условия. Задание может быть простой операцией, состоящей из одного этапа, или включающей множество этапов с управлением логикой выполнения. За управление и выполнение всех заданий отвечает служба SQL Server Agent, и ivii выполнения заданий необходимо, чтобы она была запущена. Задания можно создавать на локальном сервере, а в мультисерверной среде -выполнять их на одной или нескольких подчиненных машинах. Подробнее о мульти-серверных заданиях - в занятии 5 этой главы.

Типы этапов заданий ...

SQL Server поддерживает задания, включающие команды ОС, команды CmdExec, операторы Transact-SQL, сценарии Microsoft ActiveX и задачи репликации. Подробнее о задачах репликации - в главе 15. Задание может содержать команды всех типов, однако отдельные этапы задания могут включать только команду одного типа.

Команды ОС (например на выполнение файлов .bat, .cmd, .com или .exe) должны содержать абсолютный путь к исполнимому файлу, для исполнимого файла

ключи и параметры) и код завершения процесса. Завершив выполнение, все команды ОС генерируют код завершения, об успехе или ошибке

выполнения команды. Равный нулю код указывает на успешное, а все прочие коды - на неудачное выполнение команды. В логике задания можно определить на

различные ошибки выполнения.

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

цедуру или расширенную хранимую процедуру. Отдельный этап задания может содержать несколько пакетов операторов Transact-SQL с вложенными командами GO.

Занятие 2. Создание заданий

Служба SQL Server Agent позволяет создавать и планировать выполнение заданий, автоматизирующих стандартные административные задачи. Здесь рассказывается о создании простых и сложных заданий. Вы научитесь настраивать разрешения заданий, принадлежащих пользователям, не состоящим в серверной роли sysadmin, и выполнять такие задания вручную и по расписанию. Кроме того, вы узнаете, как уведомить оператора об успехе, ошибке или завершении выполнения задания. Мы также обсудим, как просмотреть свойства и журнал выполнения задания.

Изучив материал этог тия, вы сможете:

создавать одно- и многоэтапные задания;

создавать расписание выполнения задания;

создавать и отключать задания и расписания их выполнения;

назначать операторов, уведомляемых об успехе, ошибке или завершении

выполнения задания;

устранять проблемы с выполнением заданий; , . .

У просматривать свойства и журналы заданий. ..

Продолжительность занятия - около 45 минут



Члены роли sysadmin могут создавать этапы заданий, выполняемые от имени других

пользователей.

риях ActiveX должен быть указан язык сценария, а также команды сценария ActiveX. Кроме того, сценарий ActiveX можно скомпилировать и выполнять в виде

исполнимого файла CmdExec.

Разрешения и владельцы заданий

По умолчанию задание принадлежит создавшему его пользователю и выполняется в его контексте безопасности, независимо от того, кто это задание запустил. Члены

серверной роли sysadmin могут назначить владельцем задания любого действительного пользователя. Право собственности на задание не предоставляет прав на выполнение отдельных его этапов. Служба SQL Server на основе разрешений SQL Server проверяет права на выполнение этапов, включающих операторы Transact-SQL. По умолчанию выполнять этапы заданий, включающие команды CmdExec и сценарии ActiveX, могут только члены серверной роли sysadmin. Эти этапы выполняются в контексте безопасности учетной записи службы SQL Server Agent. Кроме того, разрешения

на выполнение таких этапов можно предоставлять и пользователям, не в

фиксированной серверной роли sysadmin. ActiveX- и CmdExec-этапы заданий, принадлежащих таким пользователям, выполняются в контексте безопасности занной вами учетной записи Windows (учетной прокси-записи) и наследуют ее разрешения. Чтобь! сконфигурировать учетную прокси-запись, в SQL Server Lntcrpiise

Manager раскройте контейнер Management нужного экземпляра SQL Server, щелкните контейнер SQL Server Agent правой кнопкой и выберите Properties, В диалоговом

окне SQL Server Agent Properties перейдите на вкладку Job System и снимите флажок в группе Non-SysAdmin Job Step Proxy Account - откроется диалоговое окно SQL Agent Proxy Account, где можно настроить учетную прокси-запись.

Примечание В Windows 98/Ме задания SQL Server Agent всегда выполняются в контексте безопасности зарегистрированного в системе пользователя.

Логика выполнения многоэтапного задания

При удачном выполнении этапа задания возможен переход к следующему или какому-то конкретному этапу. Кроме того, этап можно сконфигурировать для завершения работы и уведомления об успехе или ошибке. Например, этап задания может успешно выполнить запрограммированное действие, и, основываясь на логике ния, уведомить оператора об успехе или неудаче. В случае отказа на одном из этапов выполнение может переходить к следующему этапу задания; можно также прервать выполнение щить об успехе или отказе (рис. 13-4).

На рис. 13-4 показан процесс резервного копирования БД перед импортом генных. В случае ошибки при начальной архивации БД задание завершает выполнение и уведомляет оператора о неудаче. Если начальное резервное копирование прошло нормально, задание продолжает выполнение и средствами DTS импортирует в БД новые данные (попутно очищая их). Если импортирование прошло успешно, выполняется этап, обновляющий статистику, и затем - этап, повторно архивирующий БД (теперь

уже с новыми данными). В случае ошибки при обновлении статистики или резервном копировании БД выполняется этап, восстанавливающий БД, и оператор ет уведомление об ошибке. Задание, успешно импортировавшее данные, обновившее статистику и заархивировавшее БД, уведомляет оператора об успехе. Заметьте; этап



восстановления значенному оператору об ошибке независимо от удач-ности восстановления. Если выполняется этап, восстанавливающий БД, задание (цель которого - импортировать новые данные по обычному расписанию) считается неудачно завершившимся. Упомянутый этап может успешно восстановить БД только по состоянию на предыдущую -1 г г ию импорта данных. Администратору БД необходимо самостоятельно выяснить, почему на данном этапе возникает ошибка.

При ошибке - > При успехе

Резервное копирование БД --

ЧисткеГ данных о клиентах

Обновление статистики

( Уведомление об успехе .)<]- Резервное копирование БД

-h I

В01;станс1впение БД

- L-f Уведомление о неудаче -

Рис. 13-4 ыполнеиия многоэтапного задания

Следует также создать операторов, уведомляемых об успехе, ошибке или завершении выполнения задания. Если операторы не определены, уведомления об успехе или ошибке пользователям не передаются. По умолчанию уведомление об ошибке выполнения задания автоматически заносится в журнал приложений Windows, просмотреть который можно с помощью утилиты Event Viewer.

Примечание Для передачи данных между этапами задания следует использовать постоянные вдиды, глобальные временные таблицы или файлы ОС.

Расписания выполнения заданий

Хотя задания можно выполнять вручную (обычно так выполняются тестовые задания или отдельные этапы заданий) полной автоматизации задачи следует создать одно или несколько расписаний выполнения задания. Доступны различные виды расписаний. Задание может выполняться постоянно (например задание мониторинга), в периоды простоя процессора ( низкий уровень нагрузки определяется вами) или через определенные интервалы времени (например ежечасно, ежедневно или еженедельно). Кроме того, задания могут выполняться однократно или в ответ на конкретное оповещение. Подробнее об оповещениях - в занятии 3 этой главы.

Благодаря наличию нескольких расписаний, в рабочие дни задание можно выполнять с одним интервалом, а в выходные - с другим. Расписания можно включать и отключать. Задание, все расписания которого отключены, по-прежнему может вы-вручную или в ответ на какое-либо оповещение.



1 ... 130 131 132 [ 133 ] 134 135 136 ... 203

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика