Navicat for MySQL 怎么用?- Navicat 实战教程

A kitten
蒋川
B 端产品经理,卡拉云联合创始人
最近更新 2022年01月24日

Navicat for MySQL 怎么用?- Navicat 实战教程

Navicat 是一款专门为 MySQL 设计的可视化数据库 GUI 管理工具,我们可以在自己的计算机上,使用图形化界面(GUI)远程管理 MySQL 数据库。

Navicat 作为一款付费软件,在各类细节和功能上完胜所有免费数据库 GUI 管理工具,设置可以和官方出品的 MySQL workbench 一战。有关最热门的 MySQL GUI 管理工具的详细测评,可看我写的《最好用的 10 款 MySQL GUI 管理工具横向测评 - 免费和付费到底怎么选?》这篇文章,另外,如果你需要针对自己的工作流对数据库操作,定制开发,推荐一下卡拉云,详情见文末。

本教程详细讲解 Navicat 使用教程

一. 如何下载及安装 Navicat for MySQL

二. 如何使用 Navicat 远程连接数据库

三. 使用 Navicat 操作数据库

  1. Navicat 初始化界面
  2. 连接远程 MySQL 数据库
  3. 创建数据库
  4. 在数据库中创建表
  5. 查看表数据
  6. 向 table 表中插入数据
  7. 修改字段属性
  8. 删除数据库中的表

四.导入导出SQL/CSV/JSON 等数据

  1. Navicat 导入 SQL/CSV/JSON 等数据
  2. Navicat 导出 SQL/CSV/JSON 等数据

五. 配置 MySQL 数据库表属性

  1. 主键约束
  2. 外键约束
  3. 唯一约束:UQ 索引
  4. 非空约束
  5. 默认值约束

六. 在 Navicat 中执行一条 SQL 查询 七. 创建触发器及触发器的应用 八. 用户账号和访问权限

  1. 查看 MySQL 数据库中的账号情况
  2. 创建 MySQL 数据库账号
  3. 删除 MySQL 数据库账号

九.如何使用 Navicat 比对两个数据库的差异

十. Navicat 绿色破解版

十一. 卡拉云 - 新一代低代码开发工具

一. 如何下载及安装 Navicat

如何下载及安装 Navicat

我们可以前往 Navicat 官方网站产品页下载。注意 Navicat 英文版和中文版不仅仅是语言的区别,中文版里还有很多国内常用的服务选项。

Navicat 中文版多了中国自己的云服务商连接选项

Navicat 中文版多了中国自己的云服务商连接选项,比如连接阿里云、腾讯云、华为云等

扩展阅读:《10 款 MySQL GUI 管理工具横向测评 - 免费和付费到底怎么选?

二. Navicat 怎么远程连接数据库

有关 Navicat 远程连接我写过一篇很详细的教程,请在《Navicat 怎么远程连接 MySQL 服务器》查看教程,这里不展开写了。

Navicat 连接 MySQL 失败可能原因

Navicat 连接失败,少数情况是 Navicat 本地配置不对,大多数是远程 MySQL 服务器没哟配置好。有关 MySQL 开启允许远程连接的教程,请在《如何远程连接 MySQL 数据库,配置阿里云允许远程连接》查看教程。

以下是常见的远程连接 MySQL 失败的部分原因,大家可根据错误提示找到解决方法。

三. 使用 Navicat 操作数据库

1.Navicat 初始化界面

Navicat 初始化界面

Navicat for MySQL 初始化界面

2.Navicat 连接远程 MySQL 数据库

Navicat 连接远程 MySQL 数据库

点击配置好的远程登录卡片,登录远程 MySQL 服务器。如果你还没配置好远程端,请参照《Navicat 怎么远程连接 MySQL 服务器》这篇教程进行配置。登录远程数据库后,可以看到当前远程 MySQL 数据库中已经创建好的数据库列表。

3.Navicat 创建 MySQL 数据库

Navicat 创建 MySQL 数据库

鼠标右键点击已经连接上的数据库名,在菜单中选择「新建数据库」,进入新建数据库流程。

新建数据库

在新建数据库窗口里,填写相应的信息后,点击确定,即可快速创建 MySQL 数据库。

Navicat 会自动帮助我们生成 SQL 命令

Navicat 会自动帮助我们生成 SQL 命令,创建数据库。

执行命令,创建成功

执行命令,创建成功。可以看到 MySQL_for_kalacloud.com 列表中多了我们刚刚创建的 kalacloud_demo_database 数据库

4.如何使用 Navicat 创建表 - 怎么建表

Navicat 怎么建表

右键点击kalacloud_demo_database 下的「表」,选择「新建表」。

然后在「表」中配置字段和字段属性

然后在「表」中配置字段和字段属性,注意「自增」在下面,主键设置在表的末尾。

输入新建的「表」名

点击上方「保持」按钮,在新弹出的对话框中,输入新建的「表」名。

5.Navicat 查看表数据

双击左侧树状菜单中需要查看的表

双击左侧树状菜单中需要查看的表「kalacloud_users」,右边会显示表信息。我们可以看到,在底下的状态栏里,可以看到查询表的 SQL 代码。

6.Navicat 向表中插入数据

向表中插入数据

Navicat 插入数据像 Excel 一样简单,直接在表中双击编辑即可,编辑未提交时,显示为粉红色,点击下方对勾进行实际执行。

向表中插入数据

1.执行后,表单颜色由粉色变为白色,表示数据库已经更新

2.我们可以看到状态栏的执行 SQL 语句

7. Navicat 修改字段属性

Navicat 修改字段属性

右键点击需要修改的表,选择「设计表」,然后在右侧编辑字段属性

8.Navicat 删除数据表

Navicat 删除数据表

右键点击需要删除的表,然后选择「删除表」,确认后,表会被从数据库中删除。谨慎使用。

扩展阅读:《如何在 MySQL 中查找和删除重复记录?

四. MySQL 数据导入导出 SQL/CSV/JSON 等数据

1.使用 Navicat 导入 SQL/CSV/JSON 等数据

使用 Navicat 导入 SQL/CSV/JSON 等数据

右键选项需要导入数据的表,并点击「导入向导」。

导入向导

本教程以 CSV 为例,其实 Navicat 可以导入丰富的数据格式。

在弹出的对话框中选择需要导入的 CSV 文件。

选择需要导入的 CSV 存放路径

选择需要导入的 CSV 存放路径。

CSV 文件中的数据就按照你的设置开始导入数据库了

下一步,点击开始,CSV 文件中的数据就按照你的设置开始导入数据库了。

CSV 导入的数据

可以看到,我们刚刚从 CSV 导入的数据,已经在我们的数据库中了。

2.使用 Navicat 导出 SQL/CSV/JSON 等数据

导出向导

右键选项需要导入数据的表,并点击「导出向导」。

可以导出多种数据格式

可以看到在导出导航页面中,Navicat 可以导出多种数据格式。本教程以 CSV 未来导出。大家可以选择自己需要的格式操作,方法基本一致。

Navicat 导出 CSV 文件

最后一步,点击开始。我们可以看到,右上角的桌面已经生成了Navicat 导出 CSV 文件。

扩展阅读:《如何在 MySQL 中导入导出 SQL 数据、Excel、CSV

五. 配置 MySQL 数据库表属性

1.如何设置主键约束

如何设置主键约束

Primary Key(PK):主键约束,指定某列的数据非空、唯一、不能重复

(1)右键点击需要设置的表,选择「设计表」

(2)「键」为设置主键约束。

2.如何设置外键约束

如何设置外键约束

Foreign Key:外键,指定该列记录属于主表中的一条记录,参照另一条数据

(1)右键点击需要设置的表,选择「设计表」

(2)选择「外键」的标签

(3)选择要关联的表

(4)当前表的列,选择要关联的键

(5)被关联表的列,选择需要关联的键

(6)「名」这一行不需要填写,点击保持后,Navicat 会帮你自动填好

Navicat 会帮你自动填好「表」和「删除时」这些空。

Navicat 会帮你自动填好「表」和「删除时」这些空。

3.如何设置唯一约束:UQ 索引

如何设置唯一约束:UQ 索引

Unique:唯一约束,指定某列和几列组合的数据不能重复

Navicat 的唯一约束藏的比较深,在「设计表」的「索引」选项卡中,我们可以设置字段和索引类型,索引类型选择 Unique

空白项,Navicat 会帮你填写好

点击保持后,空白项,Navicat 会帮你填写好。

4.如何设置非空约束

Not Null:非空约束,指定某列不能为 NULL 空

Not Null:非空约束,指定某列不能为 NULL 空

选中 null 的列为数据表的非空约束,取消选中则取消该列的非空约束。

5.如何设置默认值约束

默认值(Default)的完整名称是

默认值(Default)的完整名称是 默认值约束(Default Constraint)

MySQL 默认值约束用来指定某列的默认值。

红框部分,我们可以根据自己的需求来设置默认值。 如果默认值设定为「1」,即插入一条新的记录时没有为这个字段赋值,那么系统会自动为这个字段赋值为「1」。

扩展阅读:《MySQL 重置自增 ID (AUTO_INCREMENT)教程 - 完美保留表数据的终极解决方案

六. 在 Navicat 中执行一条 SQL 查询

我们也可以直接在 Navicat 执行一段 SQL 查询,下面这段代码是向kalacloud_demo_database 数据库中kalacloud_users表里插入一行数据。

INSERT INTO `kalacloud_demo_database`.`kalacloud_users` (`name`, `phone`, `wechat_id`, `wechat_name`, `STATUS`) 
VALUES ('卡拉云 kalacloud', '13777779999', 'kalacloud', '卡拉云 kalacloud.com', '2');

新建查询

点击「查询」,然后「新建查询」,把 SQL 直接写在这里。

点击「运行」即可执行 SQL 代码

点击「运行」即可执行 SQL 代码,并且可以在下方的状态了,看到执行结果。

下面,我们运行 select 查看上一条命令是否已经写入表中。

SELECT * FROM kalacloud_demo_database.kalacloud_users;

select

我们可以看到,红框部分,ID 6 这一条就是刚刚我们写入的数据。

扩展阅读:《如何查看 MySQL 数据库、表、索引容量大小?找到占用空间最大的表

七. 创建触发器及触发器的应用

创建触发器及触发器的应用

1.鼠标右键点击「设计表」。

2.选择「触发器」标签,进入触发器设置页面

3.「名」指的是你新建的触发器名字

4.触发器类型,选择你需要的触发器类型

5.触发器触发的动作

6.触发器主体写在这里

MySQL 触发器一共有 6 种类型:

  • BEFORE INSERT : 在插入数据前,检测插入数据是否符合业务逻辑,如不符合返回错误信息。
  • AFTER INSERT : 在表 A 创建新账户后,将创建成功信息自动写入表 B 中。
  • BEFORE UPDATE :在更新数据前,检测更新数据是否符合业务逻辑,如不符合返回错误信息。
  • AFTER UPDATE :在更新数据后,将操作行为记录在 log 中
  • BEFORE DELETE :在删除数据前,检查是否有关联数据,如有,停止删除操作。
  • AFTER DELETE :删除表 A 信息后,自动删除表 B 中与表 A 相关联的信息。

有关六类触发器的实际使用方法及应用场景的详细教程,可查看《MySQL 触发器 创建 、查看、删除 insert、update、delete 教程 - 卡拉云》文章。此教程以实际应用场景为线索,按照场景细致讲解了全部 6 种触发器的使用方法。

八. 用户账号和访问权限

1.查看 MySQL 数据库中的账号情况

查看 MySQL 数据库中的账号情况

(1)在菜单栏选择 Server

(2)选择 Users and Privileges 进入用户管理页面

1054-password-lifetime

特别提示:Navicat 点击用户 出现1054 Unknown column 'password_lifetime' in 'field list'

如果你使用的是 MariaDB 的数据库,但在 Navicat 中却选择了 MySQL 连接方式。那么在查看「用户」时会报 1054 ,这是因为 MariaDB 没有 password_lifetime 这个字段,而是 password_expired 字段,这与 MySQL 不同。所以需要你在新建连接时,选对你的数据库类型。虽然 MariaDB 是 MySQL 的分支,功能几乎一模一样,但就是有些细微地方有所差别,会导致这些奇怪的错误出现。

2.创建 MySQL 数据库账号

设置用户的基本配置

(1)选择「用户」

(2)选择「新建用户」

(3)设置用户的基本配置

在「权限」选项卡中配置新建的用户权限

(4)在「权限」选项卡中配置新建的用户权限

3.删除、编辑、复制 MySQL 数据库账号

「删除用户」

(1)选择需要删除的账号

(2)点击「删除用户」

(3)点击「刷新刷新表

扩展阅读:《MySQL 权限管理查询手册 - 创建、授权、取消授权、删除、重命名账号

九.如何使用 Navicat 比对两个数据库的差异

通常在数据迁移后,我们需要对比迁移前后,两个数据库之间是否存在差异。Navicat 有这个对比功能,可以帮你完成。

数据同步

首先点击「工具」选择「数据同步」

对比的两个数据库

选择要对比的两个数据库

进行对比检测

点击开始后,Navicat 开始帮你进行对比检测。

navicat 会列出来给你参考

最后,相通和不同的地方,navicat 会列出来给你参考。

十. Navicat 绿色破解版

往上有大量的 Navicat 破解版,我也尝试了一些。对于数据库这种高度敏感、高度安全属性的东西,还是要谨慎使用盗版软件,出现问题追悔莫及。如果需要使用 MySQL GUI 管理工具管理自己的数据库的话,推荐使用 Navicat 的平替版本,MySQL 官方出品的 MySQL Workbench ,虽然深度使用没有 Navicat 细节做的那么好,可他安全又免费,很多付费软件才有的功能。

十一. 卡拉云 - 新一代低代码开发工具

Navicat 为我们提供了管理 MySQL 的图形界面管理工具,可以在本地轻松管理远程数据库,但 Navicat 只能做较底层的数据库操作。对于「构建在数据库之上,需要前端定制开发」的需求,并不适用。

卡拉云快速拖拽生成组件,迅速搭建企业内部工具

这里推荐一下我们开发的卡拉云,卡拉云是新一代低代码开发工具,免安装部署,可一键接入包括 MySQL 在内的常见数据库及 API。不仅可以完成 Navicat 所有功能,还可根据自己的工作流,定制开发。无需繁琐的前端开发,只需要简单拖拽,即可快速搭建企业内部工具。数月的开发工作量,使用卡拉云后可缩减至数天,欢迎免费试用卡拉云

卡拉云可一键接入常见的数据库及 API

卡拉云可一键接入常见的数据库及 API

kalacloud 优惠券发放核销 上图为使用卡拉云在 5 分钟内搭建的「优惠券发放核销」后台,仅需要简单拖拽即可快速生成前端组件,只要会写 SQL,便可搭建一套趁手的数据库工具。

如果你还有什么疑问,欢迎一起讨论。我的微信 HiJiangChuan。更多数据库相关教程可访问 卡拉云 查看。

卡拉云联合创始人蒋川

有关 MySQL 教程,可继续拓展学习: