Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Instância Gerenciada de SQL do Azure
Importante
Na Instância Gerenciada de SQL do Azure, a maioria, mas não todos os recursos do SQL Server Agent estão atualmente suportados. Consulte diferenças de T-SQL entre a Instância Gerenciada de SQL do Azure e o SQL Server ou limitações de tarefas do SQL Agent na Instância Gerenciada de SQL para obter detalhes.
Uma etapa de trabalho é uma ação que o trabalho realiza em um banco de dados ou servidor. Todo trabalho deve ter, pelo menos, uma etapa de trabalho. As etapas de trabalho podem ser:
- Programas executáveis e comandos de sistema operacional.
- Instruções do Transact-SQL, inclusive procedimentos armazenados e procedimentos armazenados estendidos.
- Scripts do PowerShell.
- Tarefas de replicação.
- Tarefas dos Serviços de Análise.
- Pacotes do Integration Services.
Toda etapa de trabalho é executada em um contexto de segurança específico. Se a etapa de trabalho especificar um proxy, será executada no contexto de segurança da credencial para aquele proxy. Se uma etapa de trabalho não especificar um proxy, a etapa de trabalho será executada no contexto da conta de serviço do SQL Server Agent. Somente membros da função de servidor fixa sysadmin podem criar trabalhos que não especificam explicitamente um proxy.
Como as etapas de trabalho são executadas no contexto de um usuário específico do Windows, esse usuário deve ter as permissões e a configuração necessárias para que a etapa de trabalho seja executada. Por exemplo, se você criar um trabalho que exija uma letra da unidade ou um caminho UNC, as etapas do trabalho poderão ser executadas em sua conta de usuário do Windows durante o teste das tarefas. No entanto, o usuário do Windows da a etapa de trabalho também deve ter as permissões necessárias, configurações da letra da unidade ou acesso à unidade necessária. Caso contrário, a etapa de trabalho falhará. Para evitar esse problema, assegure que o proxy de cada etapa de trabalho tenha as permissões necessárias para a tarefa executada pela etapa. Para obter mais informações, consulte Segurança para o Mecanismo de Banco de Dados do SQL Server e o Banco de Dados SQL do Azure.
Logs da etapa de trabalho
O SQL Server Agent pode gravar a saída de algumas etapas de trabalho em um arquivo do sistema operacional ou na sysjobstepslogs tabela no msdb banco de dados. Os seguintes tipos de etapa de trabalho podem gravar a saída em ambos os destinos:
- Programas executáveis e comandos de sistema operacional.
- Instruções do Transact-SQL.
- Tarefas dos Serviços de Análise.
Somente as etapas de trabalho executadas por usuários que são membros da função de servidor fixa sysadmin podem gravar a saída da etapa de trabalho em arquivos do sistema operacional. Se as etapas de trabalho forem executadas por usuários que são membros das seguintes funções de banco de dados fixas no msdb banco de dados, a saída dessas etapas de trabalho poderá ser gravada apenas na sysjobstepslogs tabela:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Os logs de etapas de trabalho são eliminados automaticamente na exclusão de trabalhos ou de etapas de trabalho.
Observação
A tarefa de replicação e o registro em log da etapa de trabalho do pacote do Integration Services são tratados pelo respectivo subsistema. Você não pode usar o SQL Server Agent para configurar o log da etapa de trabalho para esses tipos de etapas de trabalho.
Programas executáveis e comandos do sistema operacional como etapas de trabalho
Programas executáveis e comandos de sistema operacional podem ser usados como etapas de trabalho. Esses arquivos podem ter .batextensões .com.cmdde arquivo ou .exe de arquivo.
Ao usar um programa executável ou um comando de sistema operacional como etapa de trabalho, é necessário especificar:
O código de saída do processo retornado se o comando tiver sido bem-sucedido.
O comando a ser executado. Para executar um comando do sistema operacional, trata-se do próprio comando. Para um programa externo, esse é o nome do programa e os argumentos para o programa, por exemplo:
C:\Program Files\Microsoft SQL Server\160\Tools\Binn\sqlcmd.exe -e -q "sp_who"Forneça o caminho completo para o executável se o executável não estiver localizado em um diretório especificado no caminho do sistema ou o caminho para o usuário em que a etapa de trabalho é executada.
Etapas de trabalho do Transact-SQL
Ao criar uma etapa de trabalho Transact-SQL, você deve:
Identificar o banco de dados no qual executar o trabalho.
Digitar a instrução do Transact-SQL a executar. A instrução pode chamar um procedimento armazenado ou um procedimento armazenado estendido.
Opcionalmente, você pode abrir um arquivo do Transact-SQL existente na forma de um comando para a etapa de trabalho.
Dica
As etapas de trabalho do T-SQL em trabalhos do SQL Server Agent modificam o valor de TEXTSIZE, para limitar o comprimento de determinadas colunas em conjuntos de resultados. Esse comportamento pode levar a resultados inesperados. Por exemplo, SELECT consultas que funcionam conforme o esperado no SQL Server Management Studio podem retornar valores de coluna truncada quando executadas por meio do SQL Server Agent. Para evitar truncamento, defina TEXTSIZE na consulta executada pela etapa de trabalho do T-SQL.
As etapas de trabalho do Transact-SQL não usam proxies do SQL Server Agent. A vez disso, a etapa de trabalho será executada como o proprietário da etapa de trabalho ou como a conta de serviço do SQL Server Agent se o proprietário da etapa de trabalho for um membro da função de servidor fixa do administrador do sistema. Os membros da função de servidor fixa do administrador do sistema também podem especificar que as etapas de trabalho do Transact-SQL sejam executadas no contexto de outro usuário através do parâmetro database_user_name do procedimento armazenado sp_add_jobstep. Para obter mais informações, consulte sp_add_jobstep.
Observação
Uma única etapa de trabalho do Transact-SQL pode conter vários lotes. Transact-SQL etapas de trabalho podem conter comandos inseridos GO .
Etapas do trabalho de script do PowerShell
Ao criar uma etapa de trabalho de script PowerShell, é necessário especificar uma das duas opções a seguir como comando da etapa:
- O texto de um script PowerShell.
- Um arquivo de script PowerShell existente a ser aberto.
O subsistema do SQL Server Agent PowerShell abre uma sessão do PowerShell e carrega os snap-ins do SQL Server PowerShell. O script do PowerShell usado como o comando da etapa de trabalho pode referenciar o provedor e os cmdlets do SQL Server PowerShell. Para obter mais informações sobre como escrever scripts PowerShell usando os snap-ins de PowerShell do SQL Server , consulte SQL Server PowerShell.
Etapas do trabalho de replicação
Quando você cria publicações e assinaturas que usam replicação, são criados trabalhos de replicação por padrão. O tipo de trabalho criado é determinado pelo tipo de replicação (de instantâneo, transacional ou de mesclagem) e pelas opções usadas.
Etapas de trabalho de replicação ativam um destes agentes de replicação:
- Agente de Instantâneo (Trabalho de instantâneo)
- Log Reader Agent (trabalho LogReader)
- Agente de Distribuição (trabalho de distribuição)
- Merge Agent (trabalho Merge)
- Queue Reader Agent (trabalho QueueReader)
Quando a replicação está configurada, é possível especificar a execução de agentes de replicação de três formas: continuamente, depois que o SQL Server Agent é iniciado; sob demanda; ou de acordo com a agenda. Para obter mais informações sobre os agentes de replicações, consulte Visão geral dos agentes de replicação.
Etapas de trabalho do Analysis Services
SQL Server Agent dá suporte a dois tipos distintos de etapas de trabalho do Analysis Services: etapas de comandos e etapas de consultas.
Etapas do trabalho de comando do Analysis Services
Ao criar uma etapa de trabalho de comando para o Serviço de Análise, é necessário:
Identificar o servidor OLAP do banco de dados no qual a etapa de trabalho será executada.
Digitar a instrução a ser executada. A instrução deve ser um XML do método de Serviços de Análise Execute. A instrução pode não conter um envelope SOAP completo ou um método XML for Analysis Services Discover . Embora o SQL Server Management Studio dê suporte a envelopes SOAP completos e ao método Discover , as etapas de trabalho do SQL Server Agent não.
Etapas de trabalho de consulta do Analysis Services
Ao criar uma etapa de trabalho de consulta do Analysis Services, você deve:
- Identificar o servidor OLAP do banco de dados no qual a etapa de trabalho será executada.
- Digitar a instrução a ser executada. A instrução deve ser uma consulta de expressões multidimensionais (MDX).
Para obter mais informações sobre o MDX, consulte Fundamentos da Declaração MDX.
pacotes do Integration Services
Ao criar uma etapa de trabalho de pacote do Integration Services, você deve executar as seguintes etapas:
Identificar a origem do pacote.
Identificar o local do pacote.
Se arquivos de configuração forem necessários para o pacote, identificar os arquivos de configuração.
Se arquivos de comando forem necessários para o pacote, identificar os arquivos de comando.
Identifique a verificação a usar para o pacote. Por exemplo, você pode especificar que o pacote deve estar assinado ou ter um ID de pacote específico.
Identificar as fontes de dados do pacote.
Identificar os provedores de log do pacote.
Especificar variáveis e valores a serem definidos antes da execução do pacote.
Identificar opções de execução.
Adicionar ou modificar opções de linha de comando.
Se você implantou o pacote no Catálogo do SSIS e especifica o Catálogo do SSIS como a fonte do pacote, grande parte dessas informações de configuração será obtida automaticamente do pacote. Na guia Configuração , você pode especificar o ambiente, valores de parâmetros, valores de gerenciadores de conexões, substituições de propriedade e se o pacote é executado em um ambiente de runtime de 32 bits.
Para obter mais informações sobre como criar etapas de trabalho que executam pacotes do Integration Services, veja Trabalhos do SQL Server Agent para pacotes.
Tarefas relacionadas
| Descrição | Artigo |
|---|---|
| Descreve como criar uma etapa de trabalho com um programa executável. | Criar uma etapa de trabalho CmdExec |
| Descreve como redefinir permissões no SQL Server Agent. | Configurar um usuário para criar e gerenciar trabalhos do SQL Server Agent |
| Descreve como criar uma etapa de trabalho do Transact-SQL. | Criar uma etapa de trabalho do Transact-SQL |
| Descreve como definir opções para etapas de trabalho Transact-SQL no Microsoft SQL Server Agent. | Definir opções para a etapa de trabalho Transact-SQL |
| Descreve como criar e executar uma etapa de trabalho do script ActiveX. | Criar uma etapa de trabalho do script ActiveX |
| Descreve como criar e definir etapas de trabalho do SQL Server Agent que executem comandos e consultas do SQL Server Analysis Services. | Criar uma etapa de trabalho do Analysis Services |
| Descreve qual ação o SQL Server deve realizar se uma falha ocorrer durante a execução do trabalho. | Definir o fluxo de sucesso ou falha da etapa de trabalho |
| Descreve como exibir detalhes de etapa de trabalho na caixa de diálogo Propriedades da Etapa de Trabalho. | Visualizar Informações da Etapa do Trabalho |
| Descreve como excluir um log de etapas de trabalho do agente do SQL Server. | Excluir um log da etapa de trabalho |