MySQL远程连接如何在阿里云下配置?

黄舟
黄舟 原创
2017-08-20 15:20:32 916浏览

大家都知道阿里云默认是不能用客户端远程连接的,但最近因为工作的需要,不得不实现远程连接,下面这篇文章主要给大家介绍了在阿里云下配置MySQL远程连接的步骤,需要的朋友可以参考借鉴,下面来一起看看吧。

前言

众所周知在默认情况下,我们安在阿里云上的mysql是不支持远程连接的,但是我们还需要通过一些工具来连接mysql,如navicat,这时就需要我们来修改mysql的远程连接了。

注意一点:当我们修改完mysql权限相关的操作后一定要刷新权限表,使配置生效,执行


flush privileges ;

环境前提:centos7 mysql5.7

1、首先登录位于阿里云上的mysql:


mysql -u root -h localhost -p

2、打开mysql数据库 (需要有能操作mysql这个库的权限,一般是mysql的root用户)


use mysql

3、这时我们有两种方式来进行修改:

第一种:是直接将原来的 user='root' and host='localhost' 记录的host修改成%或指定的ip

1)将host设置为%表示任何ip都能连接mysql


update user set host='%' where user='root' and host='localhost';

2) 当然也可以将host指定为某个ip


update user set host='106.39.178.131' where user='root' and host='localhost';

3) 执行完以上语句,接着执行以下语句 ,刷新权限表,使配置生效


flush privileges;

第二种: 是新增一条记录方式

1)新增一个用户newname(这个新增的用户名称也可以为root)密码为并将host设置为%表示任何ip都能连接mysql


 grant all on *.* to 'newname'@'%' identified by 'Navicat_123';

2)新增一个用户newname,密码为并将host设置为指定的ip 表示 只有该ip能连接mysql


 grant all on *.* to 'newname'@'106.39.178.131' identified by 'Navicat_123';

3) 执行完以上语句,接着执行以下语句 ,刷新权限表,使配置生效


flush privileges;

当然如果想再改成本地的连接,只需要将对应用户的host改成localhost即可,


update user set host='localhost' where user='root' and host='106.39.178.131';

4、不要现在就去navicat进行连接,还需要做两件事,要不你就到坑里了

1)检查服务器防火墙3306端口开放了吗,没开放需要去开放

2)检查一下阿里云的安全组规则中是否开放了3306端口,

5、现在是时候进行远程连接啦,在工具里输入相应的参数

host: 阿里云服务器的ip

port:3306

user name : 如果是第一种方式的修改,用户就是root,第二种修改就是你自己设置的名字,例如我的就是newname

password: 如果是第一种方式的修改,密码就是root的密码,第二种修改就是你自己设置的密码,例如我的就是Navicat_123

至此,连上去那一刻,有木有很激动啊。

总结

以上就是MySQL远程连接如何在阿里云下配置?的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。