mysql不能远程连接(8.0之前的版本)

(为什么要说8.0的问题内,因为和第二步有关,参考下文

mysql8.0无法给用户授权或提示You are not allowed to create a user with GRANT的问题

1.首先进入数据库使用

use mysql;

然后看看自己的密码选项是什么名称:

describe user;

可以看到有一个text类型的密码名叫authentication_string(有的版本叫password,就把以下出现authentication_string的地方改成password就行了)

然后看看已有的账户密码。

select host,user,authentication_string from user;

2.如图,host处全是localhost,所以当然只能本地访问了。然后输入

grant all privileges on *.* to 'root'@'%' identified by 'network' with grant option;

意思是对所有数据库给所有的权力对root用户在所有ip上,用network当密码。

然后在输入

flush privileges;

这句表示从mysql数据库的grant表中重新加载权限数据。

(PS:如果想改密码用 update mysql.user set authentication_string=password('network') where user="root" and host="%";

值得注意的是变量名用authentication_string,但是方法还是用password)

如果此时你是这个样子的就改对了。

3.然后出去再改一下配置文件。

找到/etc/mysql/mysql.conf.d  文件

找到127.0.0.1,删掉或者注释掉就行了,或者像我一样闲的说明一下bind-address    =0.0.0.0

4.然后重启数据库

service mysql restart即可。

然后我们再登陆一下:

5.emmmm仔细一想,自己在阿里云上,当初也是不能访问页面,发现是安全规则的问题。去阿里云把规则改了:

这样就可以,详细逻辑可以看下文,过程直接看最后作者给的链接。

参考一下远程连接centos7 上的mysql报(ERROR 2003 (HY000): Can't connect to MySQL server on '168.x.x.x' (10060) )

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值