ERROR 2003(HY000):无法在15.29.92.100(61)连接到MySQL服务器

时间:2017-05-09 15:02:41

标签: mysql macos

我已经使用此处给出的说明在mac os sierra上安装了mysql

https://gist.github.com/nrollr/a8d156206fa1e53c6cd6

安装后。

1我禁用了mac防火墙。
2我做了以下事情:

mysqladmin -v -uroot -pXXXX
mysql -uroot -p
create user 'foo'@'%' identify by 'YYYYY';
flush privileges;

3重启mysql服务

我可以在本地使用用户foo轻松连接到mysql。但是当我尝试远程连接时。我收到了错误

ERROR 2003 (HY000): Can't connect to MySQL server on '15.20.95.200' (61)

搜索互联网,这个问题有一百万个答案,已经通过弄乱my.cnf来解决。但在mac OS Sierra上。没有my.cnf文件。

我有一个文件

/usr/local/Cellar/mysql/5.7.18_1/support-files/mysql.server

我将此文件复制到/etc/my.cnf并添加了行

[mysqld] 
bind-address=0.0.0.0

重启mysql brew services restart mysql

但我仍然遇到同样的问题。

编辑::我的IP地址没有错。我可以远程ping机器。我可以使用远程桌面并使用相同的IP地址连接到运行mysql的计算机。事实上,现在我使用远程桌面连接到机器并在本地处理mysql。使用相同的登录ID foo。

它只是mysql命令行失败。

1 个答案:

答案 0 :(得分:3)

经过多日的巨大痛苦。我终于解决了这个问题。

在“MAC OSX”上,您必须查找名为homebrew.mxcl.mysql.plist

的文件

我在/usr/local/Cellar/mysql/5.7.18_1/homebrew.mxcl.mysql.plist

中找到了此文件

此文件看起来像

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>KeepAlive</key>
  <true/>
  <key>Label</key>
  <string>homebrew.mxcl.mysql</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/opt/mysql/bin/mysqld_safe</string>
    <string>--datadir=/usr/local/var/mysql</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>WorkingDirectory</key>
  <string>/usr/local/var/mysql</string>
</dict>
</plist>

您必须将此文件更改为

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>KeepAlive</key>
  <true/>
  <key>Label</key>
  <string>homebrew.mxcl.mysql</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/opt/mysql/bin/mysqld_safe</string>
    <string>--datadir=/usr/local/var/mysql</string>
    <string>--bind-address=0.0.0.0</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>WorkingDirectory</key>
  <string>/usr/local/var/mysql</string>
</dict>
</plist>

现在通过brew services restart mysql重新启动mysql远程连接现在可以正常工作。

当您使用HOMEBREW安装mysql时,所有带有my.cnf的tomfoolery都无法在MAC OSX上运行。