我正在尝试将数据从MySQL数据库导入Excel 365(32位)工作簿。
我已下载以下连接器:
MySQL Connector Net 6.10.6
我怀疑这不是第二个DB的正确连接器。 错误是这样的:
[MySQL: Unable to connect to any of the specified MySQL hosts.]
有人能指出我解决方案的开始吗?
我也试过通过VBA进行连接但是我也遇到了一个错误,这个错误必然是由于与上面相同的原因。
答案 0 :(得分:1)
如果数据库服务器和数据库客户端(Excel)在不同的计算机上运行,则它们无法通过UNIX文件系统套接字进行通信。
如果在libmysql客户端中指定localhost
作为目标主机,则客户端将尝试通过(Unix)文件系统套接字进行连接。
另一方面,如果您改为指定127.0.0.1
,它将使用TCP套接字。
Stack Overflow:How to connect to database when server is in Unix socket?(MySQL / PHP)
维基百科:Localhost
维基百科:Unix domain socket
MySQL.com:Configuring a Connector/ODBC DSN on Windows with the ODBC Data Source Administrator GUI
在回复您的评论时,目标主机将在this page上指定的位置指定,或者也可以通过命令行以these步骤安装。
您可能会发现这有用:
我对上次设置ODBC DSN到MySQL有一个微弱的回忆。
就在不久之前,我可能会对细节感到误解,但我非常确定唯一能让它在64位系统上工作(可能因为服务器是32位?)是将 两者 32位和64位驱动程序(从here)安装到单独的文件夹中,在每次安装之间重新启动。我记得,在我做对之前,它需要十几次安装/卸载。
正确安装后,我必须使用Window的 32位版本的ODBC管理员来管理它。
令人困惑,我认为我的ODBC管理员(又名'数据源')是:
我的64位版本位于:c:\windows\system32\odbcad32.exe
我的32位版本位于:c:\windows\SysWOW64\odbcad32.exe
再一次,大部分内容来自记忆,所以这些"事实"应该在做任何事之前验证!在弄乱Windows系统文件夹时务必小心。包含所有这些信息的目的是为了说明它花了很多时间,但如果有足够的决心,你最终会弄清楚最终!
我的这个文本文件位于我的" mySQL Notes"文件夹,所以我收集我最终使用命令行来安装它:
myodbc-installer -s -a -c1 -n "
mysqlDSN
" -t "DRIVER=MySQL ODBC 5.3 Unicode Driver;SERVER=
(server name)
;DATABASE=
(database name)
;UID=
(user name)
< strong> ;PWD=
(password)
"
就我而言,我设置了与网络主机服务器的连接,因此我在CPanel中提到了server
/ database
/ uid
值。
...我记得,我必须从myodbc-installer
的32位版本的位置运行它。此外,您还会在某处显示ODBC.INI
文本文件,以显示配置。
更多细节在众多信息下: