阿里云mysql 怎么连接_Navicate 连接阿里云MySQL(两种方式及原理讲解)

一、直连方式(通过3306端口)

1.概述

开启服务器的3306端口,添加MySQL远程访问用户,可以实现直接连接远程MySQL的功能,效果就是直接将localhost换成服务器公网IP就能访问。

2. 环境准备

本地:Navicat

服务器:阿里云ECS、安装好JDK、MySQL

3.操作及讲解

(1)开放服务器安全组中3306端口

打开云服务器的3306端口是存在一定的安全风险的,默认安全组是不允许外部访问3306端口的。

登录阿里云–》控制台–》找到自己的云服务器ECS–》进去后点击实例ID

f203a551b8b05942993e02908d609a24.png

点击本实例安全组–》选择配置规则–》添加一条配置信息

f3a927540f6a1b49f7a0cc36f44e52d0.png

(2)添加MySQL远程访问用户

在安装好的MySQL数据库中存在一个mysql库,库里面有一个user表,该表存储了mysql的用户信息,默认情况下是这样的[外链

82b4500b0b8e552f34b9b4c5f9983611.png

只允许本地通过root账户登录(不关注另外两个),我们现在添加一个能够远程访问的用户既Host为%的用户。

通过shell工具连接服务器,登录mysql运行以下命令

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

flush privileges;

添加一个能够冲任意IP登录的账号,账号为root,密码为123456。第二句为刷新权限,不刷新不管用。

(3)通过本地Navicat连接远程MySQL数据库

上面我们配置好了安全组访问控制,配置了MySQL远程登录用户,接下来我们就可以直接远程访问MySQL了。

a0d45f9bf0f7a23d95663f5234c7f072.png

连接名:随意

主机:服务器IP地址

端口:3306

用户名:root

密码:123456

对比本地数据库只更改了一个IP地址就能够连接了。项目也可以直接将连接信息中localhost更改成IP地址直接访问云端的数据库。

二、使用SSH通道

1.概述

开放3306端口存在一定的安全风险,项目和数据库存放于一个服务器,不需要通过公网IP访问,开发时本地又需要连接数据库,可以使用SSH通道连接的方式连接数据库,既本地通过服务器账号密码连接服务器,然后连接MySQL,对于MySQL来说这就是一个本地的访问连接。

2.环境准备

本地:Navicat

服务器:阿里云ECS、安装好JDK、MySQL

3.操作及讲解

本方法不需要开发安全组端口,不需要为MySQL添加远程访问用户。使用SSH通道使用服务器登录账号连接MySQL。

(1)配置SSH连接

cff8679c8baa44b57e3ae21a73a7158e.png

连接时选中SSH选项,选中使用SSH通道

主机:服务器公网IP

端口:22(SSH连接端口,阿里云安全组默认放开)

用户名:登录服务器系统的用户名(注意不是MySQL的)

密码:登录服务器系统的密码(注意不是MySQL的)

以上行为相当于shell连接上了服务器

(2)配置数据库连接信息

3c251ad5f54c04cd159231cf9497b28d.png

常规操作,

主机名:随意。

主机:localhost

端口:3306

用户名:mysql用户名

密码:mysql密码

因为已经SSH连接了服务器,此处相当于本地连接MySQL。

63bb5b1de717c91247665f082bc6dc2c.png

Navicat给的这个图很形象,Navicat连接服务器,再在内部直接连接数据库

如果对你有帮助,不要忘了点个赞呦,有问题可以提问,博主每天都会来逛逛的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值