不能连接到mysql服务器(mysql连接不上服务器怎么办)
大家好,今天小编来为大家解答以下的问题,关于不能连接到mysql服务器,mysql连接不上服务器怎么办这个很多人还不知道,现在让我们一起来看看吧!
MySQL无法连接到本地服务器是什么原因
具体解决法如下:1.排除网络或防火墙问题先看是否能ping通远程服务器,ping192.168.1.211,如果不可以就是网络问题。然后,检查端口是否被防火墙挡住了,telnet192.168.1.2113306,如果连接失败,配置防火墙。2.配置防火墙,开启3306端口vi/etc/sysconfig/iptables-AINPUT-mstate–stateNEW-mtcp-ptcp–dport3306-jACCEPT(允许3306端口通过防火墙)/etc/init.d/iptablesrestart(重启防火墙使配置生效)2.检查MySQL配置3.如果开启了防火墙,telnet还是失败,通过netstat查看3306的端口状态:netstat-apn|grep3360tcp600127.0.0.1:3306:::*LISTEN13524/mysqld注意红色的地方,这说明3306被绑定到了本地。检查一下my.cnf的配置,这里可以配置绑定ip地址。
不允许主机'localhost'连接到此MysQL服务器
解决方法:
1。改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改"mysql"数据库里的"user"表里的"host"项,从"localhost"改称"%"
mysql-u root-pvmwaremysql>use mysql;mysql>update user set host='%' where user='root';mysql>select host, user from user;
2.授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON*.* TO'myuser'@'%' IDENTIFIED BY'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON*.* TO'root'@'192.168.1.3' IDENTIFIED BY'mypassword' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON*.* TO'root'@'10.10.40.54' IDENTIFIED BY'123456' WITH GRANT OPTION
mysql连接不上服务器怎么办
排除网络或防火墙问题
先看是否能ping通远程服务器,ping 192.168.1.211,如果不可以就是网络问题。然后,检查端口是否被防火墙挡住了,telnet 192.168.1.211 3306,如果连接失败,配置防火墙。
配置防火墙,开启3306端口
2.检查MySQL配置
如果开启了防火墙,telnet还是失败,通过netstat查看3306的端口状态:
netstat-apn|grep 3306tcp6 0 0 127.0.0.1:3306:::* LISTEN 13524/mysqld注意地方,这说明3306被绑定到了本地。检查一下my.cnf的配置,这里可以配置绑定ip地址。
bind-address=addr
不配置或者IP配置为0.0.0.0,表示监听所有客户端连接。
ps:我开启3306端口,并且检查MySQL配置之后,telent仍然失败,但是在本机telnet是ok的,再三确认了配置没有问题。后来跟我们的ucloud账号管理员提了一下,才知道ucloud管理后台也需要开启3306端口,用云服务器的留意这个。
3.检查用户访问权限
MySQL建用户的时候会指定一个host,默认是127.0.0.1/localhost,那么这个用户就只能本机访问,其它机器用这个用户帐号访问会提示没有权限,host改为%,表示允许所有机器访问。
最后,别忘了重启mysql使配置生效。
以上几个原因,你看一下是否适用你的情况
文章分享结束,不能连接到mysql服务器和mysql连接不上服务器怎么办的答案你都知道了吗?欢迎再次光临本站哦!