MySQL Workbench 使用教程 - 如何使用 Workbench 操作 MySQL / MariaDB 数据库中文指南

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL Workbench 是一款专门为 MySQL 设计的可视化数据库管理软件,我们可以在自己的计算机上,使用图形化界面远程管理 MySQL 数据库。有关 MySQL 远程管理软件,你可以选择 Windows 下的 HeidiSQL,MacOS 下的 Sequel Ace 或者 MySQL 官方推出的跨平台客户端 MySQL Workbench 。

MySQL Workbench 使用教程 - 如何使用 MySQL Workbench 操作数据库

本文首发:《MySQL Workbench 使用中文教程 - 卡拉云

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

有关 MySQL 远程管理软件,你可以选择 Windows 下的 HeidiSQL,MacOS 下的 Sequel Ace 或者 MySQL 官方推出的跨平台客户端 MySQL Workbench 。

本文使用 Mac 版 MySQL Workbench 进行讲解,Mac 版与 windows 版、Linux 版除 UI 界面稍有不同外,整个操作逻辑完全一致,不论你使用何种操作系统及版本,均可跟随本教程学习。

本教程目录

一. 如何下载及安装 MySQL Workbench

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

三. 使用 Workbench 操作数据库

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

四. MySQL 数据导入导出

  1. 导入 SQL 数据
  2. 导出 SQL 数据

五. 配置 MySQL 数据库表属性

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

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

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

八. 用户账号和访问权限

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

九. Workbench 的升级版卡拉云

一. 如何下载及安装 MySQL Workbench

MySQL Workbench 作为 MySQL 官方出品的数据库操作软件,我们可以前往 MySQL Workbench 官方下载页 免费下载。

下载MySQL Workbench

在这个下载页中,可根据你的实际情况选择适合你的运行平台及版本。

下载后一路 Next 安装即可。

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

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

  • 你的服务器需要打开 SSH 登录(如果选择 SSH 登录后再登录 MySQL 需要打开)
  • 调整服务器防火墙
  • 配置好 MySQL 远程登录(如果选择直接远程登录 MySQL 服务器时需要打开)

有关 Workbench 远程登录的教程,请在《如何使用 Workbench 远程连接到 MySQL 服务器》查看全文。

有关 MySQL 开启远程登录的教程,请在《如何远程连接 MySQL 数据库,配置阿里云外网连接》查看全文。

三. 使用 Workbench 操作数据库

1.MySQL Workbench 初始化界面

Workbench 初始化界面

Workbench 初始化界面

2.连接远程 MySQL 数据库

连接远程 MySQL 数据库

点击配置好的远程登录卡片,登录远程 MySQL 服务器。如果你还没配置好远程端,请参照《如何使用 Workbench 远程连接到 MySQL 服务器》这篇教程进行配置。

连接远程 MySQL 数据库

登录远程数据库后,红框部分为当前远程 MySQL 数据库中已经创建好的数据库列表。

3.创建数据库

创建数据库

在 SCHEMAS 列表的空白处,点击鼠标右键,在弹出的菜单中选择「Create Schema…」,进入数据库创建流程页面。

填写数据库名称

在 Schema Name 里填入新建数据库的数据库名,然后选择 Apply

生成 SQL 命令脚本

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

创建数据库成功

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

4.在kalacloud_demo 数据库中创建表

设置当前数据库为默认数据库

右键点击kalacloud_demo ,选择 Set as Default Schema 先把它设置成默认数据库。

创建数据库中的表

然后选择下箭头,右键点击 Tables 选择 Create Table 进入创建表的流程页。

表的创建流程页

(1)Name:这里填写表名

(2)这里创建表中的各列、列属性。

(3)点击<click to edit>可添加一列。

(4)点击 Apply 执行 SQL 命令。

创建表的 SQL 命令

MySQL Workbench 会帮我们生成创建表的 SQL 命令。

5.查看表数据

查看表数据

(1)点击要查看的表名后面的「闪电 icon」标示

(2)Workben 自动帮我们生成一段查看表的 SQL 命令

(3)点击黄色闪电标志执行后,可在 Result Grid 看到查询表的表数据

6.向 table 表中插入数据

向 table 表中插入数据

(1)使用 Select 查出表内容后,在表格内直添加需要写入的数据。

(2)Workbench 会生成一段查看表的代码

(3)在下方表格中展示表内数据,我们可以根据自己的需求在这里向表内添加数据。

(4)最后点击应用生成添加数据的代码

向 table 表中插入数据的 SQL 代码

如上图所示,我们可以看到 id 为 1 的卡拉云这一行数据已经转化成 SQL 命令,点击应用即可将数据添加到数据库中。

7.修改字段属性

修改字段属性

右键点击需要修改的表,选择「Alter Table...」,右侧会显示出表信息,修改需要修改的内容后,Apply 即可应用。

8.删除数据库中的表

删除数据表

右键选择需要删除的表,然后点击「Drop Table...」即可删除。注意:此操作不可撤回,谨慎选择。

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

四. MySQL 数据导入导出

1.使用 MySQL Workbench 导入 SQL 数据

使用 MySQL Workbench 导入数据

在菜单栏中选择 File → Open SQL Script... 选择要导入的 SQL 文件

打开 SQL 文件

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

选择 SQL 文件

这里非常关键,一定要仔细阅读。

(1)在打开的 SQL 文件的头部,写入需要导入的数据库名,本教程将导入 kalacloud_demo 这个数据库。 所以在文件中写入 USE kalacloud_demo;

(2)点击黄色闪电 icon 执行代码

(3)将这 4 条数据写入数据库对应的 users 表中

MySQL 数据导入成功

使用 SELECT 查询表,可以看到 4 条数据已经成功导入

2.使用 MySQL Workbench 导出 SQL 数据

使用 MySQL Workbench 导出数据

(1)选择 Administration 标签

(2)在 MANAGENMENT 中找到 Data Export

(3)选择需要导出的数据库

(4)选择需要导出数据库中的表

(5)选择导出内容

(6)选择导出 SQL 文件的存储路径

(7)Start Export 开始导出

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

五. 配置 MySQL 数据库表属性

1.主键约束

主键约束 Primary-Key

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

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

(2)PK 为设置主键约束。

2.外键约束

外键约束-Foreign-Key

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

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

(2)选择「Foreign Keys」的标签

(3)选择要关联的表

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

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

(6)Apply 应用,进行关联

3.唯一约束:UQ 索引

唯一约束:UQ 索引

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

选中的列就是数据表的唯一约束索引,取消选中则取消该列的唯一约束索引。

4.非空约束

非空约束-Not-Null.jpg

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

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

5.默认值约束

默认值约束-Default

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

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

红框部分,states 的默认值设定为「1」,即插入一条新的记录时没有为这个字段赋值,那么系统会自动为这个字段赋值为「1」。

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

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

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

INSERT INTO `kalacloud_demo`.`kalacloud_table_demo` (`id`, `name`, `phone`, `wechat_id`, `wechat_name`, `states`) 
VALUES ('2', '卡拉云 kalacloud', '13777779999', 'kalacloud', '卡拉云 kalacloud.com', '2');

执行 query

直接在 Query 标签中写入 SQL 代码,然后点击「黄色闪电」即可执行代码。

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

SELECT * FROM kalacloud_demo.kalacloud_table_demo;

query 执行完成

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

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

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

创建 MySQL 触发器

1.鼠标右键点击需要添加触发器的表。

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

3.选择需要添加的触发器类型。

4.添加触发器代码

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 进入用户管理页面

2.创建 MySQL 数据库账号

创建 MySQL 数据库账号

(1)选择 Add Account

(2)添加账号详细信息

(3)Apply 应用

3.删除 MySQL 数据库账号

删除 MySQL 数据库账号

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

(2)点击 Delete

(3)点击 Refresh 刷新列表

最后,Workbench 有一些只有付费软件才独有的功能,比如画 ER 图,比如正逆向工程,数据库本地远程之间同步等,这类进阶功能我单独写了一篇,大家可以看这篇《如何使用 MySQL Workbench 自动生成 ER 图、同步更新远程数据库 - MySQL Workbench 使用教程

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

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

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

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

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

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

卡拉云可根据公司工作流需求,轻松搭建数据看板,并且可分享给组内的小伙伴共享数据

仅需拖拽即可生成前端组件

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

使用卡拉云5分钟搭建优惠券发放核销系统

总结

在本教程中,我们讲解了 MySQL Workbench 操作 MySQL 数据库的基础操作。

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

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7天前
|
SQL 关系型数据库 MySQL
12 PHP配置数据库MySQL
路老师分享了PHP操作MySQL数据库的方法,包括安装并连接MySQL服务器、选择数据库、执行SQL语句(如插入、更新、删除和查询),以及将结果集返回到数组。通过具体示例代码,详细介绍了每一步的操作流程,帮助读者快速入门PHP与MySQL的交互。
23 1
|
10天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
24 4
|
16天前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
83 1
|
4天前
|
运维 关系型数据库 MySQL
安装MySQL8数据库
本文介绍了MySQL的不同版本及其特点,并详细描述了如何通过Yum源安装MySQL 8.4社区版,包括配置Yum源、安装MySQL、启动服务、设置开机自启动、修改root用户密码以及设置远程登录等步骤。最后还提供了测试连接的方法。适用于初学者和运维人员。
33 0
|
1月前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
126 6
|
1月前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
61 3
Mysql(4)—数据库索引
|
1月前
|
SQL Ubuntu 关系型数据库
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
本文为MySQL学习笔记,介绍了数据库的基本概念,包括行、列、主键等,并解释了C/S和B/S架构以及SQL语言的分类。接着,指导如何在Windows和Ubuntu系统上安装MySQL,并提供了启动、停止和重启服务的命令。文章还涵盖了Navicat的使用,包括安装、登录和新建表格等步骤。最后,介绍了MySQL中的数据类型和字段约束,如主键、外键、非空和唯一等。
70 3
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
|
19天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
61 2
|
22天前
|
存储 关系型数据库 MySQL
MySQL vs. PostgreSQL:选择适合你的开源数据库
在众多开源数据库中,MySQL和PostgreSQL无疑是最受欢迎的两个。它们都有着强大的功能、广泛的社区支持和丰富的生态系统。然而,它们在设计理念、性能特点、功能特性等方面存在着显著的差异。本文将从这三个方面对MySQL和PostgreSQL进行比较,以帮助您选择更适合您需求的开源数据库。
87 4
|
27天前
|
存储 关系型数据库 MySQL
如何在MySQL中创建数据库?
【10月更文挑战第16天】如何在MySQL中创建数据库?