none
Linked erro ao conectar RRS feed

  • Pergunta

  • Caros Amigos do Fórum, precisava mais uma vez da preciosa ajuda de vocês!

    Estou precisando usar o linked Server para fazer a consulta em um servidor remoto.

    Exemplo precisava que o Servidor_2  fizesse um select na tabela Chamados no Servidor_1

    Criei o linked Server no Servidor_2 usando o exemplo abaixo, porem quando realizo o select para teste ocorre a seguinte mensagem de erro:

    OLE DB provider "MSDASQL" for linked server " baseConsulta " returned message "[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).".

    OLE DB provider "MSDASQL" for linked server " baseConsulta " returned message "[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.".

    Exemplo do Select

    select * from baseConsulta.database.[dbo].[chamados]

    Exemplo do código usado para fazer o Linked Server

    EXEC master.dbo.sp_addlinkedserver @server = N'baseConsulta', @srvproduct=N'199.11.11.111', @provider=N'MSDASQL', @provstr=N'DRIVER={SQL Server};SERVER= N'199.11.11.111;UID=Usuario;PWD=Senha;'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'collation compatible', @optvalue=N'false'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'data access', @optvalue=N'true'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'dist', @optvalue=N'false'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'pub', @optvalue=N'false'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'rpc', @optvalue=N'false'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'rpc out', @optvalue=N'false'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'sub', @optvalue=N'false'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'connect timeout', @optvalue=N'0'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'collation name', @optvalue=null
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'lazy schema validation', @optvalue=N'false'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'query timeout', @optvalue=N'0'
    GO
    EXEC master.dbo.sp_serveroption @server=N'baseConsulta', @optname=N'use remote collation', @optvalue=N'true'

    Para teste criei o mesmo linked server, mas me vez de usar o Servidor_2 usei um desktop para teste, e o linked server funcionou perfeitamente, alguem sabe como resolver este problema?

    Desde já agradeço a ajude de vocês 


    terça-feira, 24 de junho de 2014 15:00

Respostas

  • Carlos,

    Ambos os servidores estão configuradores no mesmo domínio e rede?

    Você consegui por exemplo se conectar via Management Studio do Server_1 na instância que esta rodando no Server_2?


    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]

    • Marcado como Resposta Carlos_rodrigues quarta-feira, 14 de janeiro de 2015 18:18
    quarta-feira, 25 de junho de 2014 14:19

Todas as Respostas

  • Boa tarde...

    Na linha @server use o nome da instancia do seu servidor, ex para db\sql2008

    EXEC master.dbo.sp_addlinkedserver @server = N'DB\SQL2008', @srvproduct=N'SQL Server'

    Tb faça o mapeamento do login:

    EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'DB\SQL2008',@useself=N'True',@locallogin=N'domain\user',@rmtuser=NULL,@rmtpassword=NULL

    O usuário "domain\user" precisa existir nas duas instancias...

    terça-feira, 24 de junho de 2014 16:07
  • Gabriel,

    Obrigado pela resposta, mais ainda não consegui resolver.

    Na string de conexão o usuário usado  existe apenas no SQL do Server_1 o usuário tem permisão para logar remotamente.

    Help!!



    terça-feira, 24 de junho de 2014 16:38
  • Carlos,

    Ambos os servidores estão configuradores no mesmo domínio e rede?

    Você consegui por exemplo se conectar via Management Studio do Server_1 na instância que esta rodando no Server_2?


    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]

    • Marcado como Resposta Carlos_rodrigues quarta-feira, 14 de janeiro de 2015 18:18
    quarta-feira, 25 de junho de 2014 14:19
  • Galvão,

    Ambos os servidores estão na mesma rede, realizei o teste que você informou tentei conectar  o Management Studio do Server_2 na instancia do Server_1 apareceu a mensagem abaixo:

    Ocorreu um erro relacionado à rede ou específico da instância ao estabelecer uma conexão com o SQL Server. O servidor não foi encontrado ou não estava acessível. Verifique se o nome da instância está correto e que o SQL Server está configurado para permitir conexões remotas. (provider: Named Pipes Provider, error: 40 - Não foi possível abrir uma conexão com o SQL Server) (Microsoft SQL Server, erro: 53)

    Teria alguma sugestão? :)

    quarta-feira, 25 de junho de 2014 16:19