现象
mysql启动以后,在本地和远程使用IP指定主机,无法连接
原因
通过lsof -I tcp -n -P命令看到mysql是监127.0.0.1的3306端口,所以使用其他IP地址无法访问到该端口,就是在本地指定IP(不是127这个回环地址)都无法访问。
解决方法
macOS上mysql使用的配置文件地址,通过下面命令查看
mysql --verbose --help | grep my.cnf
输出:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
在我自己的机器上是使用的这个文件:/usr/local/etc/my.cnf
cat /usr/local/etc/my.cnf
# Default Homebrew MySQL server config
[mysqld]
# Only allow connections from localhost
bind-address = 127.0.0.1
可以看到,mysql是使用的127.0.0.1这个IP地址,所以使用其他IP是不能访问到mysql的3306的端口。
修改bind-address = 0.0.0.0,重启后再次登录,成功。