mysql连不上

每次装 mysql 不论是在本地还是 docker,都会遇到各种各样问题,但是每次都会遇到,但是每次都忘记处理的就是远程连接。

设置允许外网通过 3306 访问

mysql5.7 默认不允许外网访问的,这里是修改这个设置

  • 修改配置文件
    我现在用的 ubuntu18 配置文件在 /etc/mysql/mysql.conf.d/mysqld.cnf

  • 找一下有没有 port=xxxx
    没有的话在[mysqld]下添加一行:port=3306

  • 找一下有没有 bind-address=127.0.0.1
    这个意思是说只能本地连接,找到的话就改成 bind-address=0.0.0.0表示允许各种 ip 访问
    如果没找到,就添加到port下面一行即可

如果需要限制访问 ip,只需要把 0.0.0.0 替换成需要的 ip 就 ok 了

设置允许 root 用户外网访问

除了上面那层限制,mysql 还对用户访问进行了限制,默认情况下,root 用户不允许外网访问,现在修改这个设置

$ mysql -uroot -p
mysql> update mysql.user set host='%' where user='root';

重启一下 mysql

$ sudo service mysql restart

防火墙

除了 mysql 自身对远程访问的限制,操作系统也会对远程访问限制,这就是防火墙的作用,这里只记录 ubuntu 下关闭防火墙的方法

$ sudo ufw status # 查看当前防火墙状态

如果结果是 status: inactive表明防火墙是关着的,直接去下一步
否则:

$ sudo ufw allow 3306

这个命令不是关闭防火墙,而是只暴露 3306 端口

安全组

如果你用的是阿里云或者其他哪家的云主机,那么很可能安全组里没开放 3306,这个就需要查看各家的安全组怎么开放了

到这里还不能访问的话,欢迎留言或者联系 372301467@qq.com

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值