none
Erro ao executar um pacote DTSX conectando com ODBC 32 bits utilizando JOB (Login Timeout Expired) RRS feed

  • Discussão Geral

  • Olá.

    Estou tendo alguns problemas na execução de um pacote DTSx. O pacote seleciona informações de um banco de dados SQL Progress, e para tanto se torna necessário efetuar a conexão do SQL Server com o Progress através de ODBC. A máquina onde roda o pacote está configurada para rodar em 64 bits e o ODBC está criado/configurado em 32 bits.

    Ok, ao instalar o pacote no servidor e executá-lo, o mesmo é executado corretamente e os dados selecionados do Progress são inseridos corretamente nas tabelas do SQL Server. Porém, torna-se necessário executar o pacote por um Job a fim deste ser schedulado e não ter a necessidade de ter de ser executado manualmente... e é aí que se começa o problema.

    Quando se executa o pacote pelo Job, é retornado a mensagem de erro que os tipos ODBC são incompatíveis, pois o ODBC criado está em 32 bits e a máquina está em 64 bits. Para tanto, existe uma solução onde se configura manualmente no job para executar o pacote através da linha de comando DTEXEc, forçando a execução pelo DTEXEc 32 bits contido no diretório.

    Porém ao executar por esta linha de comando, retorna o erro "LOGIN TIMEOUT EXPIRED". Daí vem a pergunta, alguém saberia me dizer por que está ocorrendo este erro ? O pacote é executado por autenticação integrada, e se estou certo o Job é executado pelo usuário associado ao SQL Agent. Este erro estaria relacionado com permissões de usuários, o usuário que executa o pacote tem de ser o mesmo usuário que executa o Job ?

    Lembrando, o pacote está funcionando corretamente, o erro só ocorre quando o pacote é executado pelo Job.


    Ale

    sexta-feira, 18 de janeiro de 2013 00:35

Todas as Respostas

  • Alessandro, boa tarde.

    Verifique se a conta do SQL agent tem permissão de se conectar no servidor Progress e também se a conta tem permissão de select.

    Abs.


    Eduardo Gomes - http://www.h1solucoes.com.br - Twitter: @edugp_sp

    terça-feira, 22 de janeiro de 2013 19:32
  • Alessandro,

    Diretamente pelo ODBC você consegui se conectar ao Progress?

    Uma das possibilidades é que o Provider que esta sendo utilizado no seu ODBC para se conectar ao Progress não aceita este parâmentro que você esta passando pelo comando DTExec.


    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]

    segunda-feira, 28 de janeiro de 2013 12:07
    Moderador