【MySQL】阿里云Ubuntu系统无法远程连接MySQL——Can't connect to MySQL server on xxxxx(10060 "Unknown error")


前言

今天想在本地远程连接阿里云Ubuntu中的MySQL,结果按照网上的教程进行配置后,还是出现了点问题,遂自己找到问题并记录下来。


正文

1、先登录MySQL,并创建一个拥有所有权限的用户
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' 
IDENTIFIED BY '用户密码' WITH GRANT OPTION;
2、刷新权限信息,使其立即生效
FLUSH PRIVILEGES;
3、进入MySQL目录,修改mysqld.cnf文件

进入MySQL目录时,我们发现了一个my.cnf文件(window是my.ini好像)
点击之后发现里面内容很少,但是最后有两行代码,大致意思就是引入外部文件
在这里插入图片描述我们根据它的指示,打开mysql.conf.d目录,发现里面有一个mysqld.cnf文件,这个就是我们需要修改的文件了!
建议大家修改每一个配置文件之前,对源文件进行拷贝,如果修改出错的话,可以使用拷贝文件替换修改的文件,避免问题变得更大!
红色圈是我们要修改的文件,蓝色圈是我拷贝的副本
在这里插入图片描述修改mysqld.cnf,找到bind-address=127.0.0.1,将其注释,并添加bind-address=0.0.0.0
在这里插入图片描述

4、在本地服务器中测试是否可以连接MySQL

这里我使用的是navicat,新建连接,选择MySQL,按照下图进行填写
在这里插入图片描述
点击测试连接后发现,报错了!
在这里插入图片描述我去查了百度,然后可能是因为Ubuntu那边开启了防火墙

5、关闭服务器防火墙

先查看防火墙状态,如果防火墙为inactive(关闭)状态,则可以跳过此步骤,直接看第6步

sudo ufw status

若防火墙为active(开启状态),则输入以下命令关闭防火墙

sudo utf disable

再次测试是否能够连接,还是不行
在这里插入图片描述

6、开启阿里云控制台3306端口

此时我想到了还有一种可能,就是端口没有开启,因为我之前也因为阿里云端口的问题,写过几篇博客,感兴趣的可以查看我之前的博客
【PHP】在阿里云服务器Ubuntu邮箱PHPMailer使用出现500的问题
【SSL】配置好SSL仍然无法通过阿里云服务器访问https443端口的问题

登录阿里云控制台,查看服务器的安全组规则
在这里插入图片描述在这里插入图片描述果然没有看到3306端口(这里面的端口是我之前配置的,如果跟你们显示的不一样是正常的)
在这里插入图片描述
添加安全组规则,按照下图进行填写
在这里插入图片描述

7、再次测试连接

连接成功!
在这里插入图片描述


总结

在修改配置文件的时候,建议大家养成备份的好习惯
笔者之前因为一直修改配置文件,导致错误越来越多,想要恢复就比较麻烦了,最后不得不重装各种应用还有配置环境,有时候重装还不能解决问题orz,做了不少无用功。
加油!继续解决一个一个的问题!

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值