无法从 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 或数据库