
在测试服务器上安装完mysql后, 服务器自己访问没有问题, 但是本地通过sql客户端连接时报错: 错误代码 2003不能连接到MySQL服务器在*.*.*.*(111)。在网上查了一些资料,解决方案有:
1.关闭防火墙
2.数据库中修改用户的访问权限
3./etc/my.cnf中将bind-address属性注释掉
三种方案我都试了,但还是不行,通过 netstat -an | grep 3306 命令可以看到地址还是本地地址:
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
后面发现有一个mysql配置文件目录是/etc/mysql/my.cnf,将该文件中的bind-address属性注释掉再重启mysql服务可以发现地址已经变了:
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
本地客户端自然也可以连上了。要查看mysql当前使用的配置文件可以通过ps命令或者去mysql服务启动脚本中去查看。