Create a PowerShell Script Job Step
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 tópico descreve como criar e definir uma etapa de trabalho do SQL Server Agent que execute um script do PowerShell no SQL Server usando o SQL Server Management Studio ou o Transact-SQL.
Antes de começar
Segurança
Para obter informações detalhadas, consulte Implementar a segurança do SQL Server Agent.
Somos todos ouvidos: Se você encontrar algo desatualizado ou incorreto neste artigo, como uma etapa ou um exemplo de código, informe-nos. Você pode clicar no botão Esta página na seção Comentários na parte inferior desta página. Lemos todos os itens de comentários sobre o SQL, normalmente no dia seguinte. Obrigado.
Como usar o SQL Server Management Studio.
Para criar uma etapa de trabalho de script PowerShell
No Pesquisador de Objetos , conecte-se a uma instância do Mecanismo de Banco de Dados do SQL Servere a expanda.
Expanda SQL Server Agent, crie um novo trabalho ou clique com o botão direito do mouse em um trabalho existente e clique em Propriedades. Para obter mais informações sobre como criar um trabalho, consulte Criando trabalhos.
Na caixa de diálogo Propriedades do Trabalho , clique na página Etapas e, em seguida, em Nova.
Na caixa de diálogo Nova Etapa de Trabalho , digite o Nome da etapade trabalho.
Na lista Tipo , clique em PowerShell.
Na lista Executar como , selecione a conta proxy com as credenciais que o trabalho usará.
Na caixa Comando , digite a sintaxe do script PowerShell que será executada para a etapa de trabalho. Como alternativa, clique em Abrir e selecione um arquivo que contenha a sintaxe de script. Para obter um exemplo de um script do PowerShell, consulte Como usar o Transact-SQL abaixo.
Clique na página Avançado para definir as seguintes opções de etapa de trabalho: a ação a tomar em caso de êxito ou falha da etapa, quantas vezes o SQL Server Agent deve tentar executar a etapa e com que frequência.
Usando o Transact-SQL
Para criar uma etapa de trabalho de script PowerShell
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.
-- creates a PowerShell job step that finds the processes -- that use more than 1000 MB of memory and kills them USE msdb; GO EXEC sp_add_jobstep @job_name = N'Weekly Sales Data Backup', @step_name = N'Kills all processes that use more than 1000 MB of memory', @subsystem = N'PowerShell', @command = N'Get-Process | Where-Object { $_.WS -gt 1000MB } | Stop-Process', @retry_attempts = 5, @retry_interval = 5 ; GO
Para obter mais informações, consulte sp_add_jobstep (Transact-SQL).
Usando o SQL Server Management Objects
Para criar uma etapa de trabalho de script PowerShell
Use a classe JobStep com uma linguagem de programação à sua escolha, como Visual Basic, Visual C# ou PowerShell.