Como posso excluir este ODBC?

Como posso excluir este ODBC?

Não consigo excluir um ODBC específico do tipo DSN do sistema. Consigo criar e remover outras conexões ODBC no mesmo servidor, mas um ODBC específico (nome = padrão) não pode ser removido. Se eu tentar renomeá-lo para algo diferente de "Padrão", um novo DSN do sistema será criado com o nome original "Padrão", que também possui os mesmos metadados, como descrição e FQDN do servidor.

Informações ambientais:

  • SO = Windows Server 2012 padrão de 64 bits
  • ODBC=
    • Nome = Padrão
    • Plataforma = 32 bits
    • Driver = SQL Server Native Client 10.0
    • Tipo = DSN do sistema
  • Banco de dados = SQL Server 2008 R2 SP2 (localizado em outro servidor)

O que tentei/aprendi até agora:

  1. Tentei remover este ODBC usando "Fontes de dados ODBC de 32 bits" (caminho =%windir%\syswow64\odbcad32.exe). Não recebo nenhuma mensagem de erro após tentar removê-lo, mas o ODBC permanece assim mesmo. Não consigo nem ver esse ODBC usando "Fontes de dados ODBC de 64 bits" (caminho =%windir%\system32\odbcad32.exe), embora eu consiga ver (mas não modificar) outros ODBCs de 32 bits usando esta ferramenta de 64 bits.
  2. Se eu realizar um "Test Data Source..." dentro da ferramenta de configuração deste ODBC "Padrão", ele obtém sucesso com "TESTES CONCLUÍDOS COM SUCESSO!"
  3. Este ODBC foi originado para ser usado com o Microsoft Dynamics GP 2010. Quando eu inicio o GP 2010 para tentar me conectar a este ODBC "Padrão", ele não está disponível como uma opção de conexão, embora todos os outros ODBCs no servidor estejam.
  4. Não consegui encontrar nenhuma referência no registro a este ODBC "Padrão" ou a qualquer outro ODBC do tipo DSN de sistema. Eu olhei para dentroHKEY_LOCAL_MACHINE >> SOFTWARE >> ODBC >> ODBC.INI, e tudo o que existe é uma chave de registro padrão (name = (Default), não a string literal "Default"). Além disso, em minha própria pesquisa, vi menção a uma chave "Fontes de dados ODBC" que deveria aparecer neste caminho de registro, mas simplesmente não tenho uma.

Responder1

Consigo excluir recriando um valor de registro. Então apaguei todo o ODBC usando o%windir%\SysWOW64\odbcad32.exeCliente GUI.

Para recriar o valor do registro, eu precisava saber para onde ir. Neste caso, o caminho do registro emHKEY_LOCAL_MACHINE >> SOFTWARE >> Wow6432Node >> ODBC >> ODBC.INI >> Fontes de dados ODBCestava faltando um valor. O valor que criei manualmente tinha as seguintes informações:

  • Nome = Padrão
  • Tipo = REG_SZ
  • Dados = SQL Server Native Client 10.0

Depois que esse valor foi criado, DUAS entradas apareceram no cliente GUI ODBC de 32 bits com o nome "Padrão". Depois que excluí um ODBC "Padrão", ambos desapareceram!

Minha suspeita é que havia uma chave para "Padrão" no ODBCINST.INI, pois acho que vi uma antes da exclusão. Não há ninguém lá agora. Se houvesse um antes, ele foi excluído usando a ferramenta GUI no processo descrito acima.

informação relacionada