Create an Analysis Services 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 Instância Gerenciada de SQL do Azure no SQL Server para obter mais detalhes.

Este tópico descreve como criar e definir etapas de trabalho do SQL Server Agent no SQL Server que executem comandos e consultas do SQL Server Analysis Services usando o SQL Server Management Studio, o Transact-SQL ou o SQL Server Management Objects.

Antes de começar

Limitações e Restrições

  • Se a etapa de trabalho usar um comando do Analysis Services, a instrução de comando deverá ser o método Execute do XML for Analysis Services. A instrução não pode conter um envelope do protocolo SOAP completo nem o método Discover do XML for Analysis. Embora o SQL Server Management Studio seja compatível com envelopes SOAP completos e com o método Discover, as etapas de trabalho do SQL Server Agent não são. Para obter mais informações sobre o XML for Analysis Services, consulte Visão geral do XMLA (XML for Analysis).

  • Se a etapa de trabalho usar uma consulta do Analysis Services, a instrução de consulta deverá ser uma consulta MDX. Para obter mais informações sobre o MDX, consulte Conceitos básicos da instrução MDX.

Segurança

Permissões

  • Para executar uma etapa de trabalho que use o subsistema Analysis Services, o usuário deve ser um membro da função de servidor fixa sysadmin ou ter acesso a uma conta proxy válida definida para usar esse subsistema. Além disso, a conta de serviço do SQL Server Agent ou o proxy deve ser um administrador do Analysis Services e uma conta de domínio do Windows válida.

  • Apenas membros da função de servidor fixa sysadmin podem gravar em arquivo a saída de uma etapa de trabalho. Se a etapa de trabalho for executada por usuários membros da função de banco de dados SQLAgentUserRole no banco de dados msdb , a saída poderá ser gravada apenas em uma tabela. O SQL Server Agent grava a saída da etapa de trabalho na tabela sysjobstepslog do banco de dados msdb.

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

Como usar o SQL Server Management Studio.

Para criar uma etapa de trabalho de comando do Analysis Services

  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, 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 Criar trabalhos.

  3. Na caixa de diálogo Propriedades do Trabalho , clique na página Etapas e, em seguida, em Nova.

  4. Na caixa de diálogo Nova Etapa de Trabalho , digite um trabalho Step name(Nome da etapa).

  5. Na lista Tipo , clique em Comando do SQL Server Analysis Services.

  6. Na lista Executar como , selecione um proxy que tenha sido definido para usar o subsistema Comando do Analysis Services. Um usuário membro da função de servidor fixa sysadmin também pode selecionar Conta de Serviço do SQL Agent para executar essa etapa de trabalho.

  7. Selecione o Servidor onde a etapa de trabalho será executada ou digite o nome do servidor.

  8. Na caixa Comando , digite a instrução a executar ou clique em Abrir para selecionar uma instrução.

  9. Clique na página Avançado para definir opções para essa etapa de trabalho, como a ação que o SQL Server Agent deve tomar em caso de êxito ou falha da etapa, quantas vezes a etapa deve ser tentada e onde deve ser gravada sua saída.

Para criar uma etapa de trabalho de consulta do Analysis Services

  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, 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 Criar trabalhos.

  3. Na caixa de diálogo Propriedades do Trabalho , clique na página Etapas e, em seguida, em Nova.

  4. Na caixa de diálogo Nova Etapa de Trabalho , digite o Nome da etapade trabalho.

  5. Na lista Tipo , clique em Consulta do SQL Server Analysis Services.

  6. Na lista Executar como , selecione um proxy que tenha sido definido para usar o subsistema Consulta do Analysis Services. Um usuário membro da função de servidor fixa sysadmin também pode selecionar Conta de Serviço do SQL Agent para executar essa etapa de trabalho.

  7. Selecione o Servidor e o Banco de Dados onde a etapa de trabalho será executada ou digite o nome do servidor ou do banco de dados.

  8. Na caixa Comando , digite a instrução a executar ou clique em Abrir para selecionar uma instrução.

  9. Clique na página Avançado para definir opções para essa etapa de trabalho, como a ação que o SQL Server Agent deve tomar em caso de êxito ou falha da etapa, quantas vezes a etapa deve ser tentada e onde a saída da etapa do trabalho deve ser gravada.

Usando o Transact-SQL

Para criar uma etapa de trabalho de comando do Analysis Services

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

  2. Na barra Padrão, clique em Nova Consulta.

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

    -- Creates a job step that uses XMLA to create a relational data source that
    -- references the AdventureWorks2022 Microsoft SQL Server database.  
    USE msdb;  
    GO  
    EXEC sp_add_jobstep  
        @job_name = N'Weekly Sales Data Backup',  
        @step_name =
            N'Create a relational data source that references the AdventureWorks2022 Microsoft SQL Server database',  
        @subsystem = N'ANALYSISCOMMAND',  
        @command =
            N' <Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">  
        <ParentObject>  
            <DatabaseID>AdventureWorks2022</DatabaseID>  
        </ParentObject>  
        <ObjectDefinition>  
            <DataSource xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xsi:type="RelationalDataSource">  
                <ID>AdventureWorks2022</ID>  
                <Name>Adventure Works 2022</Name>  
                <ConnectionString>Data Source=localhost;Initial Catalog=AdventureWorks2022;Integrated Security=True</ConnectionString>  
                <ImpersonationInfo>  
                    <ImpersonationMode>ImpersonateServiceAccount</ImpersonationMode>  
                </ImpersonationInfo>  
                <ManagedProvider>System.Data.SqlClient</ManagedProvider>  
                <Timeout>PT0S</Timeout>  
            </DataSource>  
        </ObjectDefinition>  
    </Create>', ;  
    GO  
    

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

Para criar uma etapa de trabalho de consulta do Analysis Services

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

  2. Na barra Padrão, clique em Nova Consulta.

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

    -- Creates a job step that uses MDX to return data  
    USE msdb;  
    GO  
    EXEC sp_add_jobstep  
        @job_name = N'Weekly Sales Data Backup',  
        @step_name = N'Returns the Internet sales amount by state',  
        @subsystem = N'ANALYSISQUERY',  
        @command = N' SELECT  
       [Measures].[Internet Sales Amount] ON COLUMNS,  
       [Customer].[State-Province].Members ON ROWS  
    FROM [AdventureWorks2022]',   
        @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 XMLA ou MDX. Para obter mais informações, veja SMO (SQL Server Management Objects).