我成功安装了适用于 Windows 的 MySQL ODBC 5.1 驱动程序:
但不幸的是,它没有出现在 Windows 的 ODBC 数据源管理器中(是的,我甚至执行了注销 + 登录):
为什么?
答案1
我认为本文在我的雇主的网站,关于在 64 位 Windows 上使用 32 位 ODBC,可能会对您有所帮助...
您所说的内容没有明确表明您使用的是 32 位还是 64 位 ODBC 管理器,也没有明确表明您安装的是 32 位还是 64 位 MyODBC 驱动程序,但这几乎肯定是问题的根源。请注意,32 位和 64 位程序的名称相同,odbcad32 工具。区别在于它们违反直觉的目录位置——System32(用于 64 位组件)和 SysWow64(用于 32 位组件)。
你可能遇到一个老问题,但反复出现,Windows 注册表中有轻微损坏。
损坏的形式是包含以下 4 个字符串的条目——
@=""
除了注册表导出文件之外,这些条目在任何地方都不可见 - 但它们可能会导致许多不良行为。
注意:在 64 位 Windows 机器上,自然会存在与 32 位注册表相关的一些复杂问题。 此 Microsoft 知识库文章可能足以帮助你度过这些难关。
我建议您使用 64 位注册表编辑器导出以下分支(这些条目通常位于其中)--
HKEY_LOCAL_MACHINE\Software\ODBC
HKEY_CURRENT_USER\Software\ODBC
HKEY_LOCAL_MACHINE\Software\WOW6432Node\ODBC
HKEY_CURRENT_USER\Software\WOW6432Node\ODBC
在任何文本编辑器(记事本或写字板通常都可以)中编辑这些文件,并删除所有包含上述 4 个字符的字符串的行。然后,删除您导出的注册表树段,并从编辑的文件导入 - 从而恢复树段,减去损坏的部分。
答案2
通常会忘记 32 位组件在 64 位系统上无法正常工作,而微软通过将文件夹命名为 SysWOW64 来增加混淆,以表示 32 位