您好,欢迎光临! 推荐您使用Chrome浏览器访问本站。

MySQL无法远程连接的几种可能

MySQL无法在远程连接,一般情况下可能是:

1.没有权限

mysql库的user表里设置权限

例子:

第一种方法:
grant all privileges on  *.*  to root@’localhost’ identifies by ‘123456’;1

//给localhost主机(本地)的root用户设置123456密码并开所有权限对所有库的所有表(*.*);如果要不限制主机 则把localhost改成 %

第二种方法:

或者更改user表里的数据达到效果
update user set host=”%” where user=”root” and host=”localhost”;1

//你也可以再生成一个专门用于远程连接的账号,只给增删改查的权限,因为root权限太大了有点危险
grant select,insert,update,delete on *.* to suliang@”%” Identified by “123456”;1

再补充个改用户密码的sql
update user set password=password(‘123456′) where user=’root’ ;1

user表里的host,user,password

localhost 127.0.0.1代表本机

最后,记得刷新mysql的权限
flush privileges;1

2.防火墙开放3306端口

编辑linux防火墙

vim 打开 /etc/sysconfig/iptables文件
-A INPUT -p tcp –dport 3306 -j ACCEPT1

此处-A和-I都可以  前者是追加,后者是插入

如果没有iptables这个文件,可以直接执行
iptables -I INPUT -p tcp –dport 3306 -j ACCEPT1
然后执行 iptables -S 即可保存

 

3.更改MySQL配置文件

mysql配置文件 my.cnf里面有个

bind_address(绑定地址)的配置

看看默认是不是   bind_address=”127.0.0.1″

如果是,则把127.0.0.1改成 0.0.0.0

然后:wq之后重启mysql即可。

您可能也喜欢