запустить job скриптом sql server
Создание шага задания Transact-SQL
В Управляемом экземпляре Azure SQL в настоящее время поддерживается большинство функций агента SQL Server (но не все). Подробные сведения см. в статье Различия в T-SQL между Управляемым экземпляром SQL Azure и SQL Server.
В этой статье описано, как создать шаг задания агента Microsoft SQL Server, который выполняет скрипты Transact-SQL в SQL Server, с помощью среды SQL Server Management Studio, Transact-SQL или управляющих объектов SQL Server.
Эти скрипты шагов задания могут вызывать хранимые процедуры и расширенные хранимые процедуры. Один шаг задания Transact-SQL может содержать несколько пакетов и команд GO. Дополнительные сведения о создании заданий см. в разделе Создание заданий.
Перед началом
безопасность
Использование среды SQL Server Management Studio
Создание шага задания Transact-SQL
В обозревателе объектов подключитесь к экземпляру компонента Компонент SQL Server Database Engineи разверните его.
Разверните Агент SQL Server, создайте задание или щелкните правой кнопкой мыши существующее задание и выберите пункт Свойства.
В диалоговом окне Свойства задания выберите страницу Шаги и нажмите кнопку Добавить.
В диалоговом окне Новый шаг задания введите имя шага задания.
В списке Тип выберите Скрипт Transact-SQL (TSQL).
Нажмите кнопку Синтаксический анализ для проверки синтаксиса.
Если синтаксис правильный, появится сообщение «Синтаксический анализ успешно завершен». При обнаружении ошибки исправьте ее.
Использование Transact-SQL
Создание шага задания Transact-SQL
В обозревателе объектов подключитесь к экземпляру компонента Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
Дополнительные сведения см. в разделе sp_add_jobstep (Transact-SQL).
Использование управляющих объектов SQL Server
Создание шага задания Transact-SQL
Воспользуйтесь классом JobStep на любом языке программирования, таком как Visual Basic, Visual C# или PowerShell.
sp_start_job (Transact-SQL)
Отдает агенту SQL Server распоряжение немедленно выполнить задание.
Синтаксические обозначения в Transact-SQL
Синтаксис
Аргументы
[ @error_flag = ] error_flag Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.
[ @server_name = ] ‘server_name’ Целевой сервер, на котором необходимо запустить задание. server_name имеет тип nvarchar (128) и значение по умолчанию NULL. server_name должен быть одним из целевых серверов, на которые в данный момент нацелено задание.
[ @step_name = ] ‘step_name’ Имя шага, с которого начинается выполнение задания. Применяется только к локальным заданиям. Аргумент step_name имеет тип sysname и значение по умолчанию NULL
[ @output_flag = ] output_flag Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.
Значения кода возврата
0 (успешное завершение) или 1 (сбой)
Результирующие наборы
Remarks
Разрешения
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Дополнительные сведения о разрешениях этих ролей см. в разделе Предопределенные роли базы данных агента SQL Server.
Члены ролей SQLAgentUserRole и SQLAgentReaderRole могут запускать только те задания, которыми они владеют. Члены SQLAgentOperatorRole могут запускать все локальные задания, включая те, которые принадлежат другим пользователям. Члены роли sysadmin могут запускать все локальные и многосерверные задания.
Примеры
Запуск задания
В Управляемом экземпляре Azure SQL в настоящее время поддерживается большинство функций агента SQL Server (но не все). Подробные сведения см. в статье Различия в T-SQL между Управляемым экземпляром SQL Azure и SQL Server.
В этой статье описывается, как запускать задания агента Microsoft SQL Server в SQL Server с помощью среды SQL Server Management Studio, Transact-SQL или управляющих объектов SQL Server.
Перед началом работы
Для запуска задания используется:
Перед началом
безопасность
Использование среды SQL Server Management Studio
Запуск задания
В обозревателе объектов подключитесь к экземпляру компонента Компонент SQL Server Database Engineи разверните его.
При работе с одиночным сервером, работе на целевом сервере или запуске задания локального сервера на главном сервере щелкните правой кнопкой мыши задание, которое нужно запустить, и выберите пункт Запустить задание.
Если нужно запустить несколько заданий, щелкните правой кнопкой мыши компонент Монитор активности заданий, а затем выберите пункт Просмотр активности заданий. В разделе «Монитор активности заданий» можно выбрать несколько заданий, щелкнуть их правой кнопкой мыши и выбрать пункт Запустить задания.
При работе на главном сервере, чтобы все целевые серверы запускали данное задание одновременно, щелкните правой кнопкой мыши нужное задание, выберите пункт Запустить задание, а затем пункт Запустить на всех целевых серверах.
При работе на главном сервере, чтобы указать целевые серверы для данного задания, щелкните правой кнопкой мыши нужное задание, выберите пункт Запустить задание, а затем пункт Запустить на указанных целевых серверах. В диалоговом окне Инструкции после загрузки установите флажок Эти целевые серверы и отметьте все серверы, на которых должно запускаться данное задание.
Использование Transact-SQL
Запуск задания
В обозревателе объектов подключитесь к экземпляру компонента Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
Дополнительные сведения см. в разделе sp_start_job (Transact-SQL).
Использование управляющих объектов SQL Server
Запуск задания
Вызовите метод Start класса Job на любом языке программирования, таком как Visual Basic, Visual C# или PowerShell. Дополнительные сведения см. в статье Управляющие объекты SQL Server (SMO).
Создание задания
В Управляемом экземпляре Azure SQL в настоящее время поддерживается большинство функций агента SQL Server (но не все). Подробные сведения см. в статье Различия в T-SQL между Управляемым экземпляром SQL Azure и SQL Server.
В этой статье описывается создание задания агента SQL Server в SQL Server с помощью среды SQL Server Management Studio, Transact-SQL или управляющих объектов SQL Server (SMO).
Чтобы добавить шаги заданий, расписаний, предупреждений и уведомлений, которые можно отправить операторам, см. ссылки на разделы руководства.
Перед началом работы
Для создания задания используется
Перед началом
Ограничения
Назначение задания другому имени входа не гарантирует того, что новый владелец обладает достаточными разрешениями для успешного запуска задания.
безопасность
Чтобы изменить владельца задания, необходимо быть системным администратором.
Permissions
Использование среды SQL Server Management Studio
Создание задания агента SQL Server
В обозревателе объектов щелкните знак «плюс», чтобы развернуть сервер, на котором нужно создать задание агента SQL Server.
Щелкните знак «плюс», чтобы развернуть Агент SQL Server.
Щелкните правой кнопкой мыши папку Задания и выберите пункт Создать задание….
На странице Общие в диалоговом окне Создание задания измените общие свойства задания. Дополнительные сведения о параметрах, доступных на этой странице, см. в разделе Свойства задания — создание задания (страница «Общие»)
На странице Действия задайте шаги задания. Дополнительные сведения о параметрах, доступных на этой странице, см. в разделе Свойства задания — создание задания (страница «Шаги»)
На странице Расписания задайте расписания для задания. Дополнительные сведения о параметрах, доступных на этой странице, см. в разделе Свойства задания — создание задания (страница «Расписания»)
На странице Предупреждения задайте предупреждения для задания. Дополнительные сведения о параметрах, доступных на этой странице, см. в разделе Свойства задания — создание задания (страница «Предупреждения»)
На странице Уведомления задайте действия, которые должен выполнять агент Microsoft SQL Server после завершения задания. Дополнительные сведения о параметрах, доступных на этой странице, см. в разделе Свойства задания — создание задания (страница «Уведомления»).
Страница Цели используется для управления целевыми серверами в задании. Дополнительные сведения о параметрах, доступных на этой странице, см. в разделе Свойства задания — создание задания (страница «Цели»).
После завершения нажмите кнопку ОК.
Использование Transact-SQL
Создание задания агента SQL Server
В обозревателе объектов подключитесь к экземпляру компонента Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
Дополнительные сведения см. в разделе:
Использование управляющих объектов SQL Server
Создание задания агента SQL Server
Вызовите метод Create класса Job на любом языке программирования, таком как Visual Basic, Visual C# или PowerShell. Пример кода см. в разделе Планирование автоматических административных задач в агенте SQL Server.
Создание и запуск заданий агента SQL Server в Linux
Задания SQL Server используются для регулярного выполнения одинаковой последовательности команд в базе данных SQL Server. В этом учебнике представлен пример создания задания агента SQL Server в Linux с помощью Transact-SQL и SQL Server Management Studio (SSMS).
Известные проблемы с агентом SQL Server в Linux см. в заметках о выпуске.
предварительные требования
Для работы с этим руководством необходимо выполнить следующие условия.
Следующие компоненты являются необязательными.
Включение агента SQL Server
Чтобы использовать агент SQL Server в Linux, нужно сначала включить его на компьютере, где уже установлен SQL Server.
Начиная с версии SQL Server 2017 с накопительным пакетом обновления 4, агент SQL Server включается в пакет mssql-server и по умолчанию отключен. Сведения о настройке агента в версиях, предшествующих накопительному пакету обновления 4, см. в статье Установка агента SQL Server в Linux.
Создание образца базы данных
Чтобы создать образец базы данных с именем SampleDB, выполните указанные ниже действия. Эта база данных используется для задания ежедневного резервного копирования.
На компьютере Linux откройте сеанс терминала bash.
Используйте sqlcmd для выполнения команды CREATE DATABASE Transact-SQL.
Убедитесь, что база данных создана, выведя список баз данных на сервере.
Создание задания с помощью Transact-SQL
Приведенные ниже шаги позволяют создать задание агента SQL Server в Linux с помощью команд Transact-SQL. Это задание выполняет ежедневное резервное копирование образца базы данных SampleDB.
Для выполнения этих команд можно использовать любой клиент T-SQL. Например, в Linux можно использовать sqlcmd или Visual Studio Code. С удаленного сервера Windows Server вы также можете выполнять запросы в SQL Server Management Studio (SSMS) или использовать пользовательский интерфейс для управления заданиями, как описано в следующем разделе.
Затем создайте ежедневное расписание для задания с помощью sp_add_schedule.
Подключите расписание задания к заданию с помощью sp_attach_schedule.
Используйте sp_add_jobserver, чтобы назначить задание целевому серверу. В этом примере целевым объектом является локальный сервер.
Запустите задание с помощью sp_start_job.
Создание задания с использованием SSMS
Кроме того, с помощью SQL Server Management Studio (SSMS) в Windows можно удаленно создавать задания и управлять ими.
Запустите SSMS в Windows и подключитесь к своему экземпляру SQL Server в Linux. Дополнительные сведения см. в статье Управление SQL Server в Linux с помощью SSMS.
Убедитесь, чтобы создан образец базы данных с именем SampleDB.
Убедитесь, что агент SQL установлен и настроен правильно. Найдите знак «плюс» рядом с агентом SQL Server в обозревателе объектов. Если агент SQL Server не включен, попробуйте перезапустить службу mssql-server в Linux.
Присвойте заданию имя и создайте шаг задания.
Укажите подсистему, которую вы хотите использовать, и действие, которое должен выполнить шаг задания.
Создайте расписание задания.
Запустите ваше задание.
Next Steps
В этом руководстве вы узнали, как выполнять следующие задачи:
Далее вы можете изучить другие возможности для создания заданий и управления ими.