我使用这里给出的说明将mysql安装在mac塞拉利昂上。
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服务
我可以很容易地连接到mysql使用用户foo本地。但当我试图远程连接的时候。我知道错误了
ERROR 2003 (HY000): Can't connect to MySQL server on '15.20.95.200' (61)在互联网上搜索,这个问题有一百万个答案,这些问题都是通过与my.cnf混在一起解决的。但在mac上塞拉。没有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地址没有错。我可以远程打开机器。我可以使用远程桌面并使用相同的IP地址连接到运行mysql的机器。事实上,现在我使用远程桌面连接到机器上,并在本地运行mysql。使用相同的登录id foo。
它只是mysql命令行失败。
发布于 2017-05-15 05:07:16
在经历了许多天的巨大痛苦之后。我终于解决了这个问题。
在"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,现在工作得很好。
当你使用自制软件安装mysql时,my.cnf的所有愚蠢行为在MAC上都不起作用。
https://stackoverflow.com/questions/43873367
复制相似问题