Navicate 连接阿里云MySQL(两种方式及原理讲解)
Navicate 连接阿里云(两种方式及原理讲解)
一、直连方式(通过3306端口)
1.概述
开启服务器的3306端口,添加MySQL远程访问用户,可以实现直接连接远程MySQL的功能,效果就是直接将localhost换成服务器公网IP就能访问。
2. 环境准备
本地:Navicat
服务器:阿里云ECS、安装好JDK、MySQL
3.操作及讲解
(1)开放服务器安全组中3306端口
打开云服务器的3306端口是存在一定的安全风险的,默认安全组是不允许外部访问3306端口的。
登录阿里云–》控制台–》找到自己的云服务器ECS–》进去后点击实例ID

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

(2)添加MySQL远程访问用户
在安装好的MySQL数据库中存在一个mysql库,库里面有一个user表,该表存储了mysql的用户信息,默认情况下是这样的[外链
只允许本地通过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了。

连接名:随意
主机:服务器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连接

连接时选中SSH选项,选中使用SSH通道
主机:服务器公网IP
端口:22(SSH连接端口,阿里云安全组默认放开)
用户名:登录服务器系统的用户名(注意不是MySQL的)
密码:登录服务器系统的密码(注意不是MySQL的)
以上行为相当于shell连接上了服务器
(2)配置数据库连接信息

常规操作,
主机名:随意。
主机:localhost
端口:3306
用户名:mysql用户名
密码:mysql密码
因为已经SSH连接了服务器,此处相当于本地连接MySQL。

Navicat给的这个图很形象,Navicat连接服务器,再在内部直接连接数据库
如果对你有帮助,不要忘了点个赞呦,有问题可以提问,博主每天都会来逛逛的。
Navicate 连接阿里云MySQL(两种方式及原理讲解)的更多相关文章
- 网络协议 finally{ return问题 注入问题 jdbc注册驱动问题 PreparedStatement 连接池目的 1.2.1DBCP连接池 C3P0连接池 MYSQL两种方式进行实物管理 JDBC事务 DBUtils事务 ThreadLocal 事务特性 并发访问 隔离级别
1.1.1 API详解:注册驱动 DriverManager.registerDriver(new com.mysql.jdbc.Driver());不建议使用 原因有2个: >导致驱动被注册2 ...
- Eclipse通过jdbc连接sqlserver2008数据库的两种方式
数据库登录身份验证方式有两种 其中服务器名称即为安装SQLServer2008的电脑,充当数据库服务器,在笔者这里就是自己的电脑名称. 身份验证方式有两种:windows身份验证和SQLSer ...
- 本地DataGrip连接阿里云MySQL
1.阿里云上开通MySQL端口 2.MySQL上的设置 1⃣️mysql -uroot -p2⃣️create user 'usrabc'@'%' identified by 'usrabc'; 3. ...
- C#+VisionPro连接相机获取图像的两种方式
两种比较常用的方式. C#直接连接相机获取图像(GIGE) 在获取图像前,需要先创建一个相机对象,再使用这个相机对象的Acquire方法拍摄照片. ICogAcqFifo macqfifo;//定义相 ...
- navicat连接阿里云mysql数据库服务器遇到的1130等相关问题
最近搭建自己的博客网站的时候使用了阿里云的云服务器ESC,搭建了一个mysql数据库,在windows下使用navicat连接mysql的时候,总是连接不上,出现了1130的问题等等错误信息. 下面将 ...
- 【FineBI】FineBI连接阿里云mysql教程
因为某些原因需要查看数据信息,之前连接成功一次,今天软件更新了以后发现连接信息丢. 又重新折腾了一下. 主要有2个地方: 1.查看阿里云数据库外网连接地址:打开云数据库RDS-实例列表-管理-数据库连 ...
- Dynamics CRM 非声明验证方式下连接组织服务的两种方式的性能测试
今天看了勇哥的博文"http://luoyong0201.blog.163.com/blog/static/1129305201510153391392/",又认识到了一种新的连接 ...
- 使用Navicat连接阿里云mysql报错10061
1.添加一个远程访问账号admin mysql> use mysql; mysql> GRANT ALL ON *.* TO 账户@'%' IDENTIFIED BY '密码' WITH ...
- python连接redis数据库的两种方式
代码: # __author__ = 'STEVEN' import redis # 方式1,直接连接 # r = redis.Redis(host='192.168.43.22',port=6379 ...
随机推荐
- Java学习之注解篇
Java学习之注解篇 0x00 前言 续上篇文章,这篇文章就来写一下注解的相关内容. 0x01 注解概述 Java注解(Annotation)又称Java标注,是JDK5.0约会的一种注释机制. 和J ...
- 使用python对工作簿每个sheet表进行数据可视化展示(本案例是从第2个sheet开始循环读取也就是索引为1的表)
# 导入相关模块from pyecharts.charts import Barfrom pyecharts import options as optsfrom pyecharts.charts i ...
- ZooKeeper 分布式锁 Curator 源码 04:分布式信号量和互斥锁
前言 分布式信号量,之前在 Redisson 中也介绍过,Redisson 的信号量是将计数维护在 Redis 中的,那现在来看一下 Curator 是如何基于 ZooKeeper 实现信号量的. 使 ...
- springboot-5-持久层技术
整合mybatis 流程: 导入依赖: 除了mybaits还有mysql和jdbc依赖 <!--mybatis--> <dependency> <groupId>o ...
- ubuntu16.04细节设置
1.查看无线网卡名称 $ iwconfig ------------------ lo no wireless extensions. eth1 no wireless extensions. eth ...
- C++第五十二篇 -- 多线程之消息传递
主线程向子线程发送消息 参考链接:https://www.cnblogs.com/ranjiewen/p/5729539.html 1. 创建线程语句 HANDLE hThread; DWORD dw ...
- WEB安全新玩法 [10] 防范竞争条件支付漏洞
服务器端业务逻辑,特别是涉及数据库读写时,存在着关键步骤的时序问题,如果设计或代码编写不当就可能存在竞争条件漏洞.攻击者可以利用多线程并发技术,在数据库的余额字段更新之前,同时发起多次兑换积分或购买商 ...
- 浏览器WEB Browser 常识
浏览器WEB Browser 浏览器发展史 浏览器诞生与发展 浏览器的诞生 早期浏览器 Netscape Internet Explorer 与浏览器战争 chrome的崛起 时代之泪 IE浏览器终成 ...
- 01MATLAB导论
MATLAB语言的主要功能 数值计算 符号计算 图形绘制 程序流程控制 工具箱 课程的学习目标 要求理解MATLAB功能实现的数学背景与算法原理 掌握利用MATLAB进行问题求解的基本规律 能够利用M ...
- 使用javah 给.class类编译jni_helloworld.h文件头
第一步,在idea中,编写java文件,并且编译 package jni; public class HelloWorld { static { System.loadLibrary("He ...