Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Número de KB original: 2555855
Summary
Este artigo ajuda você a resolver erros de provedor OLE DB que ocorrem quando você executa consultas T-SQL por meio de servidores linked ou consultas ad hoc usando OPENROWSET ou OPENDATASOURCE em Microsoft SQL Server. Esses erros normalmente indicam que o provedor OLE DB não está instalado, não está registrado ou não corresponde à arquitetura SQL Server.
Symptoms
Ao executar consultas T-SQL que usam servidores vinculados ou consultas ad hoc (usando OPENROWSET ou OPENDATASOURCE), você pode receber uma das seguintes mensagens de erro:
O provedor OLE DB "<ProviderName>" não foi registrado. (Microsoft SQL Server, Erro: 7403)
Não é possível criar uma instância do provedor OLE DB "<ProviderName>" para o servidor vinculado "<LinkedServerName>". (Microsoft SQL Server, Erro: 7302)
Esses erros podem ocorrer também após as seguintes ações:
- Migre SQL Server de um computador para outro.
- Restaure o
masterbanco de dados de um servidor diferente.
Motivo
SQL Server não pode inicializar o provedor OLE DB especificado por um dos seguintes motivos:
- O provedor ou driver OLE DB não está instalado no servidor.
- O provedor instalado não corresponde à arquitetura do SQL Server (x86 versus x64).
- O provedor OLE DB está instalado, mas não está registrado corretamente.
Observação
Quando você cria um servidor vinculado usando sp_addlinkedserver, SQL Server não relata imediatamente erros relacionados à disponibilidade do provedor. Esses erros aparecem somente quando você executa uma consulta que usa o servidor vinculado.
Solução
Para resolver o problema, siga as etapas em cada seção na ordem fornecida.
Verificar os drivers ou provedores OLE DB instalados
Verifique quais provedores ou drivers OLE DB estão registrados em sua instância de SQL Server usando um dos seguintes métodos:
No SQL Server Management Studio (SSMS), expanda Server Objects>Linked Servers>Providers para ver a lista de provedores ou drivers OLE DB registrados.
Execute a consulta a seguir para ver todos os servidores vinculados definidos e seus provedores ou drivers associados:
SELECT * FROM sys.servers;Para obter mais informações sobre as colunas retornadas, consulte sys.servers (Transact-SQL).
Verificar a instalação do provedor ou do driver
Verifique se o provedor OLE DB correto está instalado e se corresponde à arquitetura do SQL Server:
Verifique se o provedor exigido pelo servidor vinculado está presente na lista de provedores de Verificar os provedores ou drivers OLE DB instalados.
Se o provedor estiver ausente, instale-o:
- For Microsoft OLE DB Driver for SQL Server (MSOLEDBSQL): Baixe a versão mais recente da página de download do Driver OLE DB Microsoft.
- Para provedores de serviços ou drivers de terceiros: Entre em contato com o fornecedor para obter o instalador correto.
Verifique se a versão do provedor corresponde à arquitetura de SQL Server. Por exemplo, instale o provedor de 64 bits para uma instância de SQL Server de 64 bits.
Para obter mais métodos para verificar o provedor, consulte a verificação de instalação do driver OLE DB.
Registrar o provedor OLE DB
Se a DLL do provedor existir no disco, mas não estiver registrada, reinstale o provedor ou driver usando as etapas em Verificar a instalação do provedor ou do driver. A reinstalação garante que a DLL esteja registrada corretamente.
Verificar a conectividade do provedor
Use um arquivo UDL (Universal Data Link) para verificar se o provedor OLE DB pode se conectar à fonte de dados de destino:
- Crie um novo arquivo de teste .udl .
- Clique duas vezes no arquivo .udl para abrir a caixa de diálogo Propriedades do Link de Dados .
- Selecione a guia Provedor e escolha o provedor OLE DB na lista.
- Na guia Conexão , insira o nome do servidor e os detalhes de autenticação.
- Selecione Testar Conexão para verificar a conectividade.
Para obter etapas detalhadas, consulte Test OLE DB conectividade com SQL Server usando um arquivo UDL.
Conteúdo relacionado
- Criar servidores vinculados (SQL Server Database Engine)
- Driver do OLE DB para SQL Server
- sp_addlinkedsrvlogin (Transact-SQL)
Aviso de isenção de responsabilidade por informações de terceiros
Os produtos de terceiros discutidos neste artigo são fabricados por empresas independentes de Microsoft. Microsoft não oferece garantia, implícita ou não, sobre o desempenho ou a confiabilidade desses produtos.