locked
Erro ao executar Jobs no SQL Server Agent RRS feed

  • Pergunta

  •  

    Boa tarde pessoal.

    Estou com um problema ao executar um Job que chama um dtsx, até então o dtsx que criei é muito simples, ele salva um arquivo em branco no c:\temp, fiz esse dtsx somente para teste, o dtsx final irá trabalhar com arquivos em rede, na qual tambem não esta funcionando.

    Ao executar o dtsx no próprio sqlserver 2008 R2, após a publicação, ele funciona normalmente, no entanto, ao chamar pelo Job ele gera um erro:

     

    Message

    Executed as user: SA\sqlservice. Microsoft (R) SQL Server Execute Package Utility  Version 10.50.1600.1 for 64-bit  Copyright (C) Microsoft Corporation 2010. All rights reserved.    Started:  19:17:14  Error: 2011-11-17 19:17:14.19     Code: 0x00000008     Source: Gera Arquivo      Description: The script returned a failure result.  End Error  DTExec: The package execution returned DTSER_FAILURE (1).  Started:  19:17:14  Finished: 19:17:14  Elapsed:  0.141 seconds.  The package execution failed.  The step failed.

     

     

    Codigo utilizado para criar o arquivo.

    StreamWriter escrever;

     

                 string logPath;

                try

                {

     

                    // TODO: Add your code here

                    logPath = "C:\\temp\\william_Testearquivo_" + System.DateTime.Today.ToString("yyyyMMddhhss") + ".txt";

     

                    if (!File.Exists(logPath))

                    {

     

                        escrever = new StreamWriter(logPath);

                        escrever.WriteLine(logPath);

                        escrever.Close();

                        escrever.Dispose();

     

                    }

     

                    Dts.TaskResult = (int)ScriptResults.Success;

                }

                catch

                {

                    Dts.TaskResult = (int)ScriptResults.Failure;

                }

     

    Muito obrigado.

    • Movido Gustavo Maia Aguiar sexta-feira, 18 de novembro de 2011 19:24 (De:SQL Server - Desenvolvimento Geral)
    sexta-feira, 18 de novembro de 2011 19:03

Respostas

Todas as Respostas

  • William,

     

    Job agendados no SQL Server agent irão se autenticar no ambiente windows com o usuario que subiu o serviço do Agent, a não ser que voce tenha um usuario de proxy configurado, Poderia verificar as permissões deste usuario?


    Fabrizzio A. Caputo
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com
    segunda-feira, 21 de novembro de 2011 11:25
    Moderador
  • Fabricio, muito obrigado pelo retorno.

    O usuário que estou utilizando no Owner do Job é SA\Administrator com acesso full na maquina.

    Em Security no SQL Server, o Server Roles esta (Public e Sysadmin).

    vlw.

     


    segunda-feira, 21 de novembro de 2011 14:02
  • William,

    Mas o usuário que esta sendo utilizado no Job para se conectar ao SQL Server é o mesmo que esta configurado nas permissões do Job?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    terça-feira, 22 de novembro de 2011 20:11
    Moderador
  • Willian,

    veja se no momento em que você importar o pacote DTSX para seu servidor o  opção em "package Protection Level" esteja selecionado "Rely on server storage and roles for access control".

     


    Marquinhos Não esqueça de qualificar a resposta.
    segunda-feira, 28 de novembro de 2011 17:58
  •  

    Bom dia a Todos.

    Consegui resolver um dos problemas que era gerar o arquivo localmente c:\temp, para resolver o problema utilizei a resposta deste post.

    http://blogs.msdn.com/b/dataaccesstechnologies/archive/2009/11/09/ssis-error-code-dts-e-oledberror-an-ole-db-error-has-occurred-reasons-and-troubleshooting.aspx

     

    A solução adotada foi o item 2

    2. Encrypt the package with "EncryptSensitiveWithPassword" or "EncryptAllWithPassword" and provide a package password each time User wants to edit/manipulate the package.

    No entanto como tinha informado inicialmente o principal objetivo é criar um arquivo na rede, na qual continua com o mesmo erro.

    Essa maquina encontra em uma rede DMZ fora do dominio do SQLServer, até então, eu consigo me conectar hà DMZ via Explorer após informar um usuário valido da DMZ.

    Obs: Tentei configurar uma credencial, mas tambem não funcionou, ou falta mais alguma informação.

    http://www.codeproject.com/KB/aspnet/Schedule__Run__SSIS__DTS.aspx

    Alguem pode me ajudar?


    sexta-feira, 2 de dezembro de 2011 14:34
  • Por favor, alguém tem uma luz.. 

    Continuo com o mesmo problema.

    Obrigado.

    sexta-feira, 23 de março de 2012 19:27
  • Bom dia William,

    O usuário que inícializa o seviço do Agent do SQL Server tem permissões para gravação na pasta da rede?

    segunda-feira, 26 de março de 2012 12:56