默认情况下远程访问会出现 Can’t connect to MySQL server on ‘192.168.10.18′ (10061) 错误
是因为,mysql的默认配置为了增强安全性,禁止了非本机的访问,在ubuntu中是这样,debian中也是。禁止的方式以前是在my.cnf中有一句
skip-network
现在则变成了:
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1 是只监听本机地址。所以,如果要开放局域网内的访问,需要注释掉这一句,或者改成: bind-address = 0.0.0.0
1)修改 bind-address = 127.0.0.1 为 bind-address = 0.0.0.0
# vim /etc/mysql/my.cnf
2)修改完成后重启mysql服务
# sudo /etc/init.d/mysql restart
这样改完3306端口就开始监听了,但是mysql的权限还没有打开root远程登陆。mysql默认是不允许远程连接的,因为有很大的安全隐患。
需要手动增加可以远程访问数据库的用户。
3)本地登入mysql,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改为"%"
#mysql -uroot -ppassword
mys