SQL Server 2005: “Erro ao obter a lista de protocolos ativados do registro [xFFFFFFFF].” no servidor vinculado

1

Estou tentando criar um objeto de servidor vinculado por meio do SQL Server Management Studio e estou recebendo os seguintes erros:

SQL Network Interfaces: Error getting enabled protocols list from registry [xFFFFFFFF]. 
OLE DB provider "SQLNCLI" for linked server "Foo" returned message "Login timeout expired".
OLE DB provider "SQLNCLI" for linked server "Foo" returned message "An error has occurred while establishing
 a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that
 under the default settings SQL Server does not allow remote connections.".

Isso está usando o tipo "SQL Server", mas eu o obtenho mesmo que eu o crie via instrução SQL. Eu posso ligar para o servidor de destino "Foo" de outras máquinas sem problema. Como posso consertar isso?

    
por Eugene Yokota 13.08.2009 / 21:02

1 resposta

1

Primeiro (apenas no caso ...), certifique-se de ter um protocolo ativado para o SQL Native Client. Vá para o SQL Server Configuration Manager, expanda SQL Native Client Configuration, clique em Client Protocols e verifique se há pelo menos um protocolo ativado (de preferência TCP / IP e / ou pipes nomeados).

Se este for o caso, dê uma olhada no seu registro para esta chave:

HKLM\Software\Microsoft\MSSQLServer\Client\SNI9.0

e olhe para os 2 valores lá (ProtocolOrder e ProtocolsSupported), pode haver algo confuso com eles.

Estes devem ser valores REG_MULTI_SZ. Os protocolos suportados devem ser sm tcp np via . ProtocolOrder deve ter na entrada para cada protocolo que você ativou, na ordem da direita para a esquerda que você quer que eles sejam.

sm = Memória compartilhada tcp = TCP / IP np = Pipes nomeados via = VIA

Portanto, se você tiver o TCP / IP ativado e listado primeiro, então Pipes Nomeados, Memória Compartilhada e VIA estarão desabilitados. Seu valor para ProtocolOrder seria

tcp
np
sm

    
por 13.08.2009 / 21:20