首页 > 数据库 > MySQL > 正文

MySQL远程连接不上的解决方法

2024-07-24 12:52:44
字体:
来源:转载
供稿:网友

之前遇到过MySQL本地可以连接但是远程连不上的问题,没有记录,今天在云上新申请的服务器上又遇到这个问题,记录一下解决过程。

1.排除网络或防火墙问题

先看是否能ping通远程服务器,ping 192.168.1.211,如果不可以就是网络问题。然后,检查端口是否被防火墙挡住了,telnet 192.168.1.211 3306,如果连接失败,配置防火墙。
配置防火墙,开启3306端口

vi /etc/sysconfig/iptables-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允许3306端口通过防火墙)/etc/init.d/iptables restart(重启防火墙使配置生效)

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使配置生效。

# /etc/init.d/mysql restart

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持错新站长站。

您可能感兴趣的文章:

MYSQL不能从远程连接的一个解决方法(s not allowed to connect to this MySQL server)php连接不上mysql但mysql命令行操作正常的解决方法mysql密码过期导致连接不上mysqlNaviCat连接时提示"不支持远程连接的MySql数据库"解决方法MySQL 客户端不输入用户名和密码直接连接数据库的2个方法CentOS下php使用127.0.0.1不能连接mysql的解决方法php 不能连接数据库 php error Can''t connect to local MySQL serverKB967723补丁造成的MYSQL在Win2003上频繁连接不上的问题的解决方法MAC下MYSQL5.7.17连接不上的问题及解决办法mysql服务启动却连接不上的解决方法
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表