Поделиться через


Создание шага задания «CmdExec»

В этом разделе описано, как создать и определить шаг задания агента Microsoft SQL Server в SQL Server 2012, использующий выполняемую программу или команду операционной системы, с помощью среды Среда SQL Server Management Studio, Transact-SQL или управляющих объектов SQL Server.

В этом разделе

  • Перед началом работы выполните следующие действия.  

    Безопасность

  • Для создания шага задания CmdExec используется:

    Среда SQL Server Management Studio

    Transact-SQL

    Управляющие объекты SQL Server

Перед началом

Безопасность

По умолчанию только члены предопределенной роли сервера sysadmin могут создавать шаги задания CmdExec. Шаги задания службы агента SQL Server запускаются под учетной записью службы агента SQL Server, если пользователь sysadmin не создал учетную запись-посредника. Пользователь, не являющийся членом предопределенной роли сервера sysadmin может создавать шаги задания CmdExec, только если у него есть доступ к учетной записи-посреднику CmdExec.

Разрешения

Дополнительные сведения см. в разделе Обеспечение безопасности агента SQL Server.

Значок стрелки, используемый со ссылкой «В начало»[Top]

Использование среды SQL Server Management Studio

Создание шага задания CmdExec

  1. В обозревателе объектов подключитесь к экземпляру компонента Компонент SQL Server Database Engine и разверните его.

  2. Разверните узел Агент SQL Server, создайте новое задание или щелкните правой кнопкой мыши существующее задание и выберите пункт Свойства.

  3. В диалоговом окне Свойства задания выберите страницу Шаги и нажмите кнопку Добавить.

  4. В диалоговом окне Новый шаг задания введите имя шага задания.

  5. В списке Тип выберите Операционная система (CmdExec).

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

  7. В поле Код завершения процесса успешной команды введите значение от 0 до 999999.

  8. В поле Команда введите команду операционной системы или программу для выполнения. Пример см. в разделе «Использование Transact T-SQL».

  9. Выберите страницу Дополнительно, чтобы задать параметры шага задания: какое действие выполнять в случае, если шаг задания завершится успешно или неуспешно; сколько раз агент SQL Server должен пытаться выполнить шаг задания; файл для вывода результатов выполнения шага задания агентом SQL Server. Только члены предопределенной роли сервера sysadmin могут записывать выходные данные шага задания в файл операционной системы.

Значок стрелки, используемый со ссылкой «В начало»[Top]

Использование Transact-SQL

Создание шага задания CmdExec

  1. В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.

  2. На панели «Стандартная» выберите пункт Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.

    -- creates a job step that that uses CmdExec
    USE msdb;
    GO
    EXEC sp_add_jobstep
        @job_name = N'Weekly Sales Data Backup',
        @step_name = N'Set database to read only',
        @subsystem = N'CMDEXEC',
        @command = C:\clickme_scripts\SQL11\PostBOLReorg GetHsX.exe', 
        @retry_attempts = 5,
        @retry_interval = 5 ;
    GO
    

Дополнительные сведения см. в разделе sp_add_jobstep (Transact-SQL).

Значок стрелки, используемый со ссылкой «В начало»[Top]

Использование управляющих объектов SQL Server

Создание шага задания CmdExec

Введите в действие класс JobStep с использованием выбранного вами языка программирования, такого как Visual Basic, Visual C# или PowerShell. Дополнительные сведения см. в разделе Управляющие объекты SQL Server (SMO).

Значок стрелки, используемый со ссылкой «В начало»[Top]