无法从 Mac lion 连接到远程 mysql

Posted

技术标签:

【中文标题】无法从 Mac lion 连接到远程 mysql【英文标题】:Cannot connect to remote mysql from Mac lion 【发布时间】:2011-12-21 13:23:32 【问题描述】:

我是一个 mac 新手,正在尝试让开发人员设置在本地开发 php 站点。他开发的站点有一个 mysql 后端,并且位于远程机器上。我们安装了 xampp 并正常工作,他可以​​从网站连接到本地 mysql 盒子,但他无法连接到远程盒子。他正在使用与我在 Windows 系统中使用的完全相同的连接信息。我没有任何问题。此外,mysql 服务器设置为接受所有用户(我们目前使用的是 root),而不管主机名。

我搜索了他的系统,但找不到 mysql.sock 文件。我不知道这是做什么的,但在谷歌上搜索了一些提到的文章。

如果可以的话,请帮忙。

【问题讨论】:

我想通了!在此过程中,我授予 root 通配符主机 db 权限。但是,一旦我在 mysql 上运行了 FLUSH PRIVILEGES,它就开始工作了。呵呵! 【参考方案1】:

尝试从您的主机 Telnet 到服务器,看看您是否收到响应。

telnet host 3306

如果这不起作用,您的 Mac 上可能有一些本地防火墙阻止了连接。另外,您没有提到的一件事是您可以从 Windows 计算机而不是 Mac 连接...它们在同一个网络上吗?如果它们位于不同的网络或不同的位置,则可能表明存在本地网络问题。

这绝对不是 mysql 的问题,而是 Mac 本身的问题。

【讨论】:

感谢 Jericon,我尝试了 telnet 并得到 GHost '192.168.44.125' is not allowed to connect to this MySQL serverConnection closed by foreign host.【参考方案2】:

mysql.sock 文件仅与运行 MySQL 服务器的机器相关,用于本地客户端与服务器通信。对于任何远程机器,它们将通过端口 3306 上的 TCP 连接。

确保在服务器计算机的防火墙中打开端口 3306,并且 MySQL 已配置为 allow TCP connections。

【讨论】:

我可以使用完全相同的网站从窗口机器连接到远程 mysql 服务器。所以看起来端口和连接是打开的,除非由于某种原因在窗口框中会有所不同?

以上是关于无法从 Mac lion 连接到远程 mysql的主要内容,如果未能解决你的问题,请参考以下文章

无法从本地主机连接到 Docker 中的 MySQL(Docker for Mac beta)

无法从 Windows 和 Linux (CentOS7) 连接到我的远程 MySQL 服务器

无法从远程计算机上的 mysql 工作台连接到 phpmyadmin 或数据库

从远程服务器连接到 Amazon EC2 上的 mysql

无法使用 finder 连接到 Lion 服务器,但可以使用 lion 服务器程序?

如何在Mac的MAMP中允许远程连接到mysql数据库