Iniciar um trabalho

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure

Importante

Atualmente, na Instância Gerenciada de SQL do Azure, a maioria dos recursos do SQL Server Agent é compatível, mas não todos. Confira Diferenças entre o T-SQL da Instância Gerenciada de SQL do Azure e o SQL Server para obter detalhes.

Este artigo descreve como começar a executar um trabalho do Microsoft SQL Server Agent no SQL Server usando o SQL Server Management Studio, o Transact-SQL ou o SQL Server Management Objects.

Um trabalho é uma série especificada de ações que o SQL Server Agent executa. SQL Server Agent podem ser executados em um servidor local ou em vários servidores remotos.

Antes de começar

Segurança

Para obter informações detalhadas, consulte Implementar a segurança do SQL Server Agent.

Use SQL Server Management Studio.

  1. No Pesquisador de Objetos , conecte-se a uma instância do Mecanismo de Banco de Dados do SQL Servere a expanda.

  2. Expanda SQL Server Agent e expanda Trabalhos. Segundo o modo pelo qual você queira que o trabalho seja iniciado, siga um destes procedimentos:

    • Se estiver trabalhando em um único servidor, em um servidor de destino ou executando um trabalho de servidor local em um servidor mestre, clique com o botão direito do mouse no trabalho que deseja iniciar e, em seguida, selecione Iniciar Trabalho.

    • Se desejar iniciar vários trabalhos, clique com o botão direito do mouse em Monitor de Atividade do Trabalho e selecione Exibir Atividade do Trabalho. No Monitor de Atividade do Trabalho, você pode selecionar vários trabalhos, clicar com o botão direito do mouse na seleção e selecionar Iniciar Trabalhos.

    • Se estiver trabalhando em um servidor mestre e quiser que todos os servidores de destino executem o trabalho simultaneamente, clique com o botão direito do mouse no trabalho que deseja iniciar, selecione Iniciar Trabalho e, em seguida, selecione Iniciar em todos os servidores de destino.

    • Se estiver trabalhando em um servidor mestre e quiser especificar servidores de destino para o trabalho, clique com o botão direito do mouse no trabalho que deseja iniciar, selecione Iniciar Trabalho e, em seguida, selecione Iniciar em servidores de destino específicos. Na caixa de diálogo Instruções Pós-Download , marque a caixa de seleção Estes servidores de destino e selecione cada servidor de destino em que o trabalho deve ser executado.

Usar o Transact-SQL

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.

  2. Na barra Padrão, selecione Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e selecione Executar.

    -- starts a job named Weekly Sales Data Backup.
    USE msdb ;
    GO
    
    EXEC dbo.sp_start_job N'Weekly Sales Data Backup' ;
    GO
    

Para obter mais informações, consulte sp_start_job (Transact-SQL).

Usar linguagens de programação

Chame o método Start da classe Job usando uma linguagem de programação à sua escolha, como Visual Basic, Visual C# ou SQL PowerShell.

SQL PowerShell

Aqui está um script do PowerShell que pode ser usado no SQL Server Agent com parâmetros. Este script demonstra como iniciar um trabalho do SQL Server Agent usando parâmetros passados para o script.

# Parameters
param(
    [string]$ServerInstance,
    [string]$JobName
)

# Load the SMO assembly
Add-Type -AssemblyName "Microsoft.SqlServer.SMO"

# Create a server object
$server = New-Object Microsoft.SqlServer.Management.Smo.Server $ServerInstance

# Get the job you want to start
$job = $server.JobServer.Jobs[$JobName]

# Start the job
if ($job) {
    $job.Start()
    Write-Output "The job '$JobName' on server '$ServerInstance' has been started successfully."
} else {
    Write-Output "The job '$JobName' was not found on server '$ServerInstance'."
}

Como usar o script no SQL Server Agent.

  1. Abra o SQL Server Management Studio (SSMS).

  2. Conecte à instância apropriada do SQL Server.

  3. Expanda o nó do SQL Server Agent.

  4. Clique com o botão direito do mouse em Trabalhos e selecione Novo Trabalho.

  5. Na caixa de diálogo Novo trabalho, insira o nome do trabalho e outros detalhes necessários.

  6. Vá para a página Etapas e selecione Novo para criar uma nova etapa de trabalho.

  7. Na caixa de diálogo Nova Etapa de Trabalho, clique em OK.

    1. Defina Tipo como PowerShell.

    2. No campo Comando, insira o script do PowerShell junto com os parâmetros, por exemplo:

      .\YourScript.ps1 -ServerInstance "YourServerInstance" -JobName "YourJobName"
      
  8. Defina quaisquer outras propriedades do trabalho conforme necessário (Agendamentos, Alertas, Notificações, etc.).

  9. Selecione OK para salvar o trabalho.

Explicação do script

  • Parâmetros: o script aceita dois parâmetros, $ServerInstance e $JobName, que são a instância do SQL Server e o nome do trabalho, respectivamente.
  • Carregar SMO: o cmdlet Add-Type é usado para carregar o assembly do SQL Server Management Objects (SMO).
  • Objeto de servidor: um novo objeto de servidor é criado usando o parâmetro $ServerInstance.
  • Obter trabalho: o script recupera o trabalho especificado usando o parâmetro $JobName.
  • Iniciar trabalho: se o trabalho for encontrado, ele será iniciado usando o método Start. O script gera uma mensagem de êxito. Se o trabalho não for encontrado, uma mensagem de erro será exibida.

Para obter mais informações, veja SMO (SQL Server Management Objects).