Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:SQL Server
Управляемый экземпляр SQL Azure
Это важно
В управляемом экземпляре SQL Azure большинство, но не все функции агента SQL Server в настоящее время поддерживаются. Дополнительные сведения см. в различиях T-SQL в Управляемом экземпляре SQL Azure с SQL Server .
Ступень задания — это действие, которое задание выполняет в базе данных или на сервере. Каждое задание должно иметь как минимум один этап. Шаги задания могут быть следующими:
- Исполняемые программы и команды операционной системы.
- Transact-SQL инструкции, включая хранимые процедуры и расширенные хранимые процедуры.
- Скрипты PowerShell.
- Задачи репликации.
- Задачи служб Analysis Services.
- Пакеты служб «Integration Services».
Каждый шаг задания выполняется в определенном контексте безопасности. Если шаг задания задает прокси-сервер, шаг задания выполняется в контексте безопасности учетных данных для прокси-сервера. Если шаг задания не указывает прокси-сервер, шаг задания выполняется в контексте учетной записи службы агента SQL Server. Только члены предопределенной роли сервера sysadmin могут создавать задания, которые явно не указывают прокси-сервер.
Так как действия задания выполняются в контексте определенного пользователя Windows, этот пользователь должен иметь разрешения и конфигурацию, необходимые для выполнения шага задания. Например, если вы создаете задание, требующее букву диска или UNC-путь, действия задания могут выполняться в учетной записи пользователя Windows при тестировании задач. Однако пользователь Windows для шага задания также должен иметь необходимые разрешения, настройки букв диска или доступ к требуемому диску. В противном случае шаг задания завершается сбоем. Чтобы предотвратить эту проблему, убедитесь, что прокси-сервер для каждого шага задания имеет необходимые разрешения для задачи, выполняемой этапом задания. Дополнительные сведения см. в статье "Безопасность ядра СУБД SQL Server" и Базы данных SQL Azure.
Журналы этапов задания
Агент SQL Server может записывать выходные данные из некоторых шагов задания в файл операционной системы или в таблицу sysjobstepslogs в msdb
базе данных. Следующие типы шагов задания могут записывать выходные данные в оба места назначения.
- Исполняемые программы и команды операционной системы.
- Операции Transact-SQL.
- Задачи служб Analysis Services.
Только действия задания, выполняемые пользователями, которые являются членами предопределенной роли сервера sysadmin , могут записывать выходные данные шага задания в файлы операционной системы. Если действия задания выполняются пользователями, которые являются членами SQLAgentUserRole, SQLAgentReaderRole или предопределенных ролей базы данных SQLAgentOperatorRole в msdb
базе данных, выходные данные из этих шагов задания можно записать только в таблицу sysjobstepslogs.
Журналы шагов задания автоматически удаляются при удалении заданий или шагов задания.
Примечание.
Задача репликации и ведение журнала этапов заданий пакетов служб Integration Services обрабатываются соответствующими подсистемами. Агент SQL Server нельзя использовать для настройки ведения журнала этапов заданий для этих типов шагов работы.
Исполняемые программы и команды операционной системы в качестве шагов задания
Исполняемые программы и команды операционной системы можно использовать в качестве шагов задания. Эти файлы могут иметь .bat, .cmd, .com или расширения файлов .exe.
При использовании исполняемой программы или команды операционной системы в качестве шага задания необходимо указать:
Код выхода процесса возвращается, если команда выполнена успешно.
Команда для выполнения. Для выполнения команды операционной системы это просто сама команда. Для внешней программы это имя программы и аргументы программы, например:
C:\Program Files\Microsoft SQL Server\160\Tools\Binn\sqlcmd.exe -e -q "sp_who"
Укажите полный путь к исполняемому файлу, если исполняемый файл не находится в каталоге, указанном в системном пути, или путь для пользователя, на котором выполняется шаг задания.
этапы задания Transact-SQL
При создании шага задания Transact-SQL вы должны:
Определите базу данных, в которой выполняется задание.
Введите инструкцию Transact-SQL для выполнения. Оператор может вызвать сохраненную процедуру или расширенную сохраненную процедуру.
При необходимости можно открыть существующий файл Transact-SQL в качестве команды для шага задания.
Подсказка
Действия задания T-SQL в заданиях агента SQL Server изменяют значение TEXTSIZE
, чтобы ограничить длину определенных столбцов в результирующих наборах. Такое поведение может привести к непредвиденным результатам. Например, запросы, которые работают должным образом в SQL Server Management Studio, SELECT
могут возвращать усеченные значения столбцов при выполнении с помощью агента SQL Server. Чтобы избежать усечения, задайте TEXTSIZE
в запросе, выполняемом на этапе задания T-SQL.
Transact-SQL шаги выполнения не используют прокси агента SQL Server. В таком случае шаг задания выполняется от имени владельца шага задания или от имени учетной записи службы агента SQL Server, если владелец шага задания является членом фиксированной серверной роли sysadmin. Члены фиксированной роли сервера sysadmin также могут указывать, что шаги выполнения задания Transact-SQL выполняются в контексте другого пользователя с помощью параметра database_user_name хранимой процедуры sp_add_jobstep
. Дополнительные сведения см. в sp_add_jobstep.
Примечание.
Один шаг задания Transact-SQL может содержать несколько пакетов. Transact-SQL действия задания могут содержать встроенные команды GO.
Шаги задания сценария PowerShell
При создании шага задания скрипта PowerShell необходимо указать одну из двух вещей в качестве команды для шага:
- Текст скрипта PowerShell.
- Существующий файл скрипта PowerShell для открытия.
Подсистема PowerShell агента SQL Server запускает сессию PowerShell и загружает модули SQL Server PowerShell. Скрипт PowerShell, используемый в качестве команды шага задания, может обращаться к поставщику и командлетам SQL Server PowerShell. Для получения дополнительной информации о написании скриптов PowerShell с использованием модулей SQL Server PowerShell см. в разделе SQL Server PowerShell.
Этапы процесса репликации
При создании публикаций и подписок с помощью репликации задания репликации создаются по умолчанию. Тип создаваемого задания определяется типом репликации (моментальным снимком, транзакцией или слиянием) и используемыми параметрами.
Шаги задания репликации активируют один из следующих агентов репликации:
- Агент моментальных снимков (задание моментального снимка)
- агент чтения журналов (задание "LogReader")
- Агент по распространению (работа по распространению)
- Агент слияния (задание слияния)
- Агент считывателя очереди (задание считывателя очереди)
При настройке репликации можно указать запуск агентов репликации одним из трех способов: непрерывно после запуска агента SQL Server, по запросу или по расписанию. Дополнительные сведения об агентах репликации см. в разделе "Обзор агентов репликации".
Этапы выполнения заданий сервера Analysis Services
Агент SQL Server поддерживает два различных типа шагов задания для Служб Analysis Services: шаги команд и шаги запросов.
Шаги задания команд для Служб Analysis Services
При создании шага задания служб Analysis Services необходимо:
Определите сервер OLAP базы данных, в котором выполняется шаг задания.
Введите инструкцию для выполнения. Оператор должен быть XML-запросом для метода Execute в службах Analysis Services. Заявление может не содержать полную оболочку SOAP или метод XML Discover для служб Analysis Services. Обратите внимание, что, хотя среда управления SQL Server Management Studio поддерживает полные оболочки SOAP и метод Discover, шаги выполнения заданий агента SQL Server этого не делают.
Этапы задания запроса служб Analysis Services
При создании шага задания запроса Analysis Services необходимо:
Определите сервер OLAP базы данных, в котором выполняется шаг задания.
Введите инструкцию для выполнения. Выражение должно быть запросом многомерных выражений (MDX).
Дополнительные сведения о многомерных выражениях см. в разделе "Основы многомерных выражений" (многомерные выражения).
пакеты служб интеграции
При создании шага задания пакета служб Integration Services необходимо выполнить следующие действия.
Определите источник пакета.
Определите расположение пакета.
Если файлы конфигурации необходимы для пакета, определите файлы конфигурации.
Если для пакета требуются файлы команд, определите файлы команд.
Определите проверку, используемую для пакета. Например, можно указать, что пакет должен быть подписан или что пакет должен иметь определенный идентификатор пакета.
Определите источники данных для пакета.
Определите поставщиков журналов для пакета.
Укажите переменные и значения, которые необходимо задать перед запуском пакета.
Определите параметры выполнения.
Добавление или изменение параметров командной строки.
Если вы развернули пакет в каталоге служб SSIS и укажите каталог служб SSIS в качестве источника пакета, большая часть этих сведений конфигурации получается автоматически из пакета. На вкладке "Конфигурация" можно указать среду, значения параметров, значения диспетчера соединений, переопределения свойств и выполнение пакета в 32-разрядной среде выполнения.
Для получения дополнительной информации о создании шагов заданий, которые запускают пакеты Integration Services, см. "Задания агента SQL Server для пакетов".
Связанные задачи
Описание | Статья |
---|---|
Описывает создание шага задания с исполняемой программой. | Создайте шаг задания CmdExec |
Описывает, как сбросить разрешения агента SQL Server. | Настройка пользователей для создания заданий агента SQL Server и управления ими |
Описывает, как создать шаг задания Transact-SQL. | Создайте шаг задания Transact-SQL |
Описывает, как определить параметры для этих этапов задания агента Microsoft SQL Server Transact-SQL. | Определение параметров шага задания Transact-SQL |
Описывает, как создать шаг задания создания скрипта ActiveX. | Создание шага задания скрипта ActiveX |
Описывает, как создать и определить этапы задания агента SQL Server, которые выполняют команды и запросы служб SQL Server Analysis Services. | Создайте шаг задания в службах Analysis Services |
Описание действия SQL Server, если во время выполнения задания возникает сбой. | Настройка потока на успешное или неудачное завершение шага задания |
Описывает, как просмотреть сведения о шаге задания в диалоговом окне "Свойства шага задания". | Просмотр сведений о шаге задания |
Описывает, как удалить журнал шага задания агента SQL Server. | Удаление журнала шагов задания |