Navicat 是一款专门为 MySQL 设计的可视化数据库 GUI 管理工具,我们可以在自己的计算机上,使用图形化界面(GUI)远程管理 MySQL 数据库。
Navicat 作为一款付费软件,他收费有收费的道理,Navicat 在各类细节和功能上完胜所有免费数据库 GUI 管理工具。有关 MySQL GUI 管理工具的选择,可看我写的这篇文章《最好用的 10 款 MySQL GUI 管理工具横向测评 - 免费和付费到底怎么选?》,如果你需要针对自己的工作流对数据库操作,定制开发,推荐一下卡拉云,详情见文末。
本教程将详细讲解如何使用 Navicat 怎么连接 MySQL 数据库及如何在 Navicat 写查询。
一. Navicat 远程连接先决条件
要跟随本教程学习,你需要准备:
- 一台开启 SSH 登录的 Ubuntu 服务器 或 已开启远程登录 MySQL(如何远程连接 MySQL 阿里云允许连接教程)
- 安装好 Navicat(Navicat 中文版和英文版不能互相转换,如需中文版,请点这里下载,中文版多了中国自己的云服务商连接选项,比如连接阿里云、腾讯云、华为云等)
二. 配置 Navicat 允许远程连接 MySQL 数据库
在你的计算机上安装 Navicat 后启动,点击 左上角「连接」图标,选择需要连接的数据库,创建一个新连接。Navicat 中文版特别提供了国内常用的三家云服务商,阿里云、腾讯云、华为云的快捷接入。
点击「连接」,选择需要连接的数据库类型,创建新连接。
(1)使用 Navicat 直接连接 MySQL
如果你的数据库对外开放允许外部访问的话,可以选择直接连接。如果你不知道怎么打开数据库远程访问,可看我写的这篇教程:《如何远程连接 MySQL 数据库,阿里云腾讯云允许远程连接教程》,特别要注意的是阿里云等云服务商自己还有防火墙,也要手动打开,细节可看这篇教程。
(2)使用 Navicat 通过 SSH 远程登录后再本地方式连接 MySQL
如果你的数据库为了安全考虑没有打开数据库远程连接,而是通过 SSH 先登录服务器,然后再以本地登录的方式登录数据库的话,可以在「常规」里设置本地登录的信息,注意主机地址要写「localhost」,再选择「SSH」的选项卡配置远程服务器登录信息即可登录。
如果你使用的是 MySQL 8.0 以上版本的数据库,可能会碰到「caching_sha2_password
」连接报错,这个错误的原因是 MySQL 8.0 更改了远程登录的账号认证方式,修复方法可看我写的这篇教程《解决 MySQL 中 caching_sha2_password 连接报错和认证方式改为 mysql_native_password 的方法》
点击「确定」,右边树状列表就有我们刚刚配置好的数据库登录信息了,MySQL_for_kalacloud.com
登录远程 MySQL 服务器
扩展阅读:《MySQL only_full_group_by 1055报错的三种解决方案,临时关闭有影响吗?》

连接数据库后需要开发后台系统?
三. 使用 Navicat 管理远程 MySQL 数据库
连接数据库后,你可以查看 MySQL 实例信息,数据库状态、当前连接数、数据库配置以及用户和权限。Navicat 还支持导入和导出 MySQL 文件,你可以使用 Navicat 对数据库进行备份和恢复。
扩展阅读:关于导入导出数据,你也可以选择更加灵活的命令行操作,具体可看我这篇教程:《如何在 MySQL 中导入导出数据、Excel、CSV》,两种方式各有各的优势,大家可全面掌握,以适应多变的应用场景。
顺便说一下,我们可以在「查询」里写复杂的 SQL 命令,或直接在查询出来的结果中编辑更新数据。有关更多 Navicat 中文使用教程,可关注卡拉云博客后续文章。
扩展阅读:《如何查看 MySQL 数据库、表、索引容量大小?找到占用空间最大的表》
四. Navicat 连接 MySQL 失败可能原因
Navicat 连接 MySQL 失败有多种情况,并不一定是单一原因。大多数失败原因是密码错误、没有允许远程连接,没有配置权限等。
以下是常见的远程连接 MySQL 失败的部分原因,大家可根据错误提示找到解决方法。
- MySQL ERROR 2003: 没有配置 My.ini 文件,配置可看这篇《MySQL 配置文件 my.cnf / my.ini 逐行详解》
- MySQL ERROR 2002:多种可能,看这篇 《MySQL ERROR 2002 错误六种可能及解决方案》
- MySQL ERROR 10061: 错误是账号访问权限或配置文件的问题《MySQL 10061的解决方案》
- MySQL ERROR 1130:登录账号没有访问权限或MySQL 配置文件不允许外网访问,看这篇《如何远程连接 MySQL 数据库》
- MySQL ERROR 1045 :账号密码错误,重新输入或者重置密码。
五. 总结
现在我们使用 Navicat 通过 SSH 访问远程服务器后,再登录 MySQL 数据库。可以在本地轻松管理远程数据库,但 Navicat 只能做较底层的数据库操作。对于「构建在数据库之上,做前端定制开发」的需求,并不适用。
这里推荐一下我们开发的卡拉云,卡拉云是新一代低代码开发工具,免安装部署,可一键接入包括 MySQL 在内的常见数据库及 API。不仅可以完成 Navicat 所有功能,还可根据自己的工作流,定制开发。无需繁琐的前端开发,只需要简单拖拽,即可快速搭建企业内部工具。数月的开发工作量,使用卡拉云后可缩减至数天,欢迎免费试用卡拉云。
卡拉云可一键接入常见的数据库及 API
如果你还有什么疑问,欢迎一起讨论。我的微信 HiJiangChuan。更多数据库相关教程可访问 卡拉云 查看。
有关 MySQL 教程,可继续拓展学习: