MySQL 8 教程

MySQL - 主页 MySQL - 简介 MySQL - 功能 MySQL - 版本 MySQL - 变量 MySQL - 安装 MySQL - 管理 MySQL - PHP 语法 MySQL - Node.js 语法 MySQL - Java 语法 MySQL - Python 语法 MySQL - 连接 MySQL - Workbench

MySQL 8 数据库

MySQL - 创建数据库 MySQL - 删除数据库 MySQL - 选择数据库 MySQL - 显示数据库 MySQL - 复制数据库 MySQL - 数据库导出 MySQL - 数据库导入 MySQL - 数据库信息

MySQL 8 用户

MySQL - 创建用户 MySQL - 删除用户 MySQL - 显示用户 MySQL - 更改密码 MySQL - 授予权限 MySQL - 显示权限 MySQL - 撤销权限 MySQL - 锁定用户账户 MySQL - 解锁用户账户

MySQL 8 表

MySQL - 创建表 MySQL - 显示表 MySQL - 修改表 MySQL - 重命名表 MySQL - 克隆表 MySQL - 截断表 MySQL - 临时表 MySQL - 修复表 MySQL - 描述表 MySQL - 添加/删除列 MySQL - 显示列 MySQL - 重命名列 MySQL - 表锁定 MySQL - 删除表 MySQL - 派生表

MySQL 8 查询

MySQL - 查询 MySQL - 约束 MySQL - INSERT 插入查询 MySQL - SELECT 查询 MySQL - UPDATE 更新查询 MySQL - DELETE删除查询 MySQL - REPLACE 替换查询 MySQL - 忽略插入 MySQL - 重复键更新时插入 MySQL - 插入到另一个表语句

MySQL 8 视图

MySQL - 创建视图 MySQL - 更新视图 MySQL - 删除视图 MySQL - 重命名视图

MySQL 8 索引

MySQL - 索引 MySQL - 创建索引 MySQL - 删除索引 MySQL - 显示索引 MySQL - 唯一索引 MySQL - 聚集索引 MySQL - 非聚集索引

MySQL 运算符和子句

MySQL - Where 子句 MySQL - Limit 子句 MySQL - Distinct 子句 MySQL - Order By 子句 MySQL - Group By 子句 MySQL - Having 子句 MySQL - AND 运算符 MySQL - OR 或运算符 MySQL - LIKE 运算符 MySQL - IN 运算符 MySQL - ANY 运算符 MySQL - Exists 运算符 MySQL - NOT 运算符 MySQL - NOT EQUAL 运算符 MySQL - IS NULL 运算符 MySQL - IS NOT NULL 运算符 MySQL - Between 运算符 MySQL - UNION 运算符 MySQL - UNION 与 UNION ALL MySQL - MINUS 运算符 MySQL - INTERSECT 运算符 MySQL - INTERVAL 运算符

MySQL 连接

MySQL - 使用连接 MySQL - Inner Join 内连接 MySQL - LEFT JOIN 左连接 MySQL - RIGHT JOIN 右连接 MySQL - CROSS JOIN 交叉连接 MySQL - 全连接 MySQL - 自连接 MySQL - Delete Join 删除连接 MySQL - UPDATE JOIN 更新连接 MySQL - 联合 vs 连接

MySQL 键

MySQL - UNIQUE 唯一键 MySQL - PRIMARY KEY 主键 MySQL - FOREIGN KEY 外键 MySQL - 复合键 MySQL - 备用键

MySQL 触发器

MySQL - 触发器 MySQL - 创建触发器 MySQL - 显示触发器 MySQL - 删除触发器 MySQL - 插入前触发器 MySQL - 插入后触发器 MySQL - 更新前触发器 MySQL - 更新后触发器 MySQL - 删除前触发器 MySQL - 删除后触发器

MySQL 8 数据类型

MySQL - 数据类型 MySQL - VARCHAR MySQL - BOOLEAN MySQL - ENUM 枚举 MySQL - DECIMAL 十进制 MySQL - INT 整数 MySQL - FLOAT 浮点数 MySQL - BIT 位 MySQL - TINYINT 微小整数 MySQL - BLOB 二进制大对象 MySQL - SET 集合

MySQL 正则表达式

MySQL - 正则表达式 MySQL - RLIKE 运算符 MySQL - NOT LIKE 运算符 MySQL - NOT REGEXP 运算符 MySQL - regexp_instr() 函数 MySQL - regexp_like() 函数 MySQL - regexp_replace() 函数 MySQL - regexp_substr() 函数

MySQL 全文搜索

MySQL - 全文搜索 MySQL - 自然语言全文搜索 MySQL - 布尔全文搜索 MySQL - 查询扩展全文搜索 MySQL - ngram 全文解析器

MySQL8 函数和运算符

MySQL - 日期和时间函数 MySQL - 算术运算符 MySQL - 数字函数 MySQL - 字符串函数 MySQL - 聚合函数

MySQL 8 其他概念

MySQL - NULL 值 MySQL - 事务 MySQL - 序列 MySQL - 处理重复项 MySQL - SQL 注入 MySQL - 子查询 MySQL - 注释 MySQL - 检查约束 MySQL - 存储引擎 MySQL - 将表导出为 CSV 文件 MySQL - 将 CSV 文件导入数据库 MySQL - UUID MySQL - 通用表表达式 MySQL - 级联删除 MySQL - Upsert 操作 MySQL - 水平分区 MySQL - 垂直分区 MySQL - 游标 MySQL - 存储函数 MySQL - SIGNAL 异常处理 MySQL - RESIGNAL 异常处理 MySQL - 字符集 MySQL - 排序规则 MySQL - 通配符 MySQL - 别名 MySQL - ROLLUP 超级聚合 MySQL - 当前日期 MySQL - 字面量 MySQL - 存储过程 MySQL - EXPLAIN 语句 MySQL - JSON MySQL - 标准差 MySQL - 查找重复记录 MySQL - 删除重复记录 MySQL - 选择随机记录 MySQL - 显示进程列表 MySQL - 更改列类型 MySQL - 重置自动增量 MySQL - Coalesce() 函数

MySQL 8 实用资源

MySQL - 实用函数 MySQL - 语句参考 MySQL - 快速指南 MySQL - 实用资源 MySQL - 讨论


MySQL - Workbench

MySQL Workbench 是一个用于操作 MySQL 服务器和数据库的图形化工具。它由 Oracle 开发和维护。该应用程序包含各种功能,例如数据建模、数据迁移、SQL 开发、服务器管理、数据库备份、数据库恢复等等。MySQL Workbench 支持 MySQL 5.7 及以上版本。

MySQL 5.7 之前的版本已被弃用,并且与 MySQL Workbench 不兼容。因此,我们需要确保在建立连接之前升级它们。

MySQL Workbench 是推荐给数据库开发人员和管理员的应用程序。我们可以在 Windows、macOS 和 Linux 操作系统上下载此应用程序。

MySQL Workbench 的功能

以下是 MySQL Workbench 的五个主要功能 -

  • SQL 开发 - 此功能允许创建和管理与数据库服务器的连接。您可以使用 MySQL Workbench 内置的 SQL 编辑器对数据库连接执行 SQL 查询。

  • 数据建模(设计) - 此功能允许以图形方式创建数据库模式模型,在模式和实时数据库之间进行正向和反向工程,并使用综合表编辑数据库的各个方面。表编辑器提供了编辑表、列、索引、触发器、分区、选项、插入、权限、例程和视图的功能。

  • 服务器管理 − 它允许我们通过管理用户、查看数据库运行状况、执行备份和恢复、检查审计数据以及监控 MySQL 服务器性能来管理 MySQL 服务器实例。

  • 数据迁移 − 它允许我们将 Microsoft SQL Server、Microsoft Access、Sybase ASE、SQLite、SQL Anywhere PostreSQL 和其他 RDBMS 表、对象和数据迁移到 MySQL。迁移功能还允许我们从 MySQL 的早期版本迁移到最新版本。

  • MySQL 企业版支持 − 此功能支持企业版产品,例如 MySQL 企业版备份、MySQL 防火墙和 MySQL 审计。

MySQL Workbench 版本

MySQL Workbench 提供三个版本。以下分别介绍:−

  • MySQL Workbench 社区版 - 开源(GPL 许可证)

  • MySQL Workbench 标准版 - 商业版

  • MySQL Workbench 企业版 - 商业版

社区版

这是一个开源且可免费下载的数据库系统版本。它遵循 GPL(通用公共许可证),并由庞大的开发者社区提供支持。

标准版

这是商业版本,能够交付高性能且可扩展的 OLT(在线事务处理)应用程序。

企业版

企业版包含一系列高级功能、管理工具和技术支持,以实现最高的可扩展性、安全性、正常运行时间和可靠性。此版本将降低 MySQL 应用程序的开发、部署和管理中的风险、成本和复杂性。

比较图表

以下是上述功能的比较图表 -

功能 社区版 标准版 企业版
可视化 SQL 开发
可视化数据库管理
性能调优
用户和会话管理
连接管理
对象管理
数据管理
可视化数据建模
逆向工程
正向工程
Schema 同步
Schema &模型验证
DBDoc
MySQL Enterprise 备份的 GUI
MySQL Enterprise 审计的 GUI
MySQL Enterprise 的 GUI防火墙
脚本和插件
数据库迁移

MySQL Workbench 管理工具

MySQL Workbench 中的管理工具在数据安全方面发挥着至关重要的作用。以下是 MySQL Workbench 提供的一些管理工具 -

用户管理

此工具允许创建、修改和删除与用户相关的帐户。使用它可以管理用户的权限。

服务器配置

它允许我们配置服务器参数。它显示有关服务器和状态变量的各种详细信息、线程数、缓冲区分配大小、最佳性能微调等。

数据库备份和恢复

此工具用于导入和导出 MySQL 转储文件。这些转储文件包含用于创建表、创建视图、创建存储过程等的 SQL 脚本。

服务器日志

此工具按每个连接选项卡显示 MySQL 服务器的日志信息。对于每个选项卡连接,它都包含一个用于常规错误日志的附加选项卡。

性能仪表板

此选项卡提供服务器性能的实时统计视图和分析,例如 CPU 使用率、内存使用率、查询执行时间等。

在 MySQL Workbench 中创建数据库

我们可以在 MySQL Workbench 中创建数据库,而无需显式使用 SQL 语句。以下步骤展示了如何在 MySQl Workbench 中创建数据库 -

步骤 1 - 打开 MySQL Workbench 应用程序并使用用户名和密码登录。

步骤 2 - 现在,要创建数据库,请右键单击"模式"菜单,然后选择"创建模式"选项。另一种创建模式的方法是单击下图中以红色轮廓突出显示的"模式"按钮。

mysql

步骤 3 - 选择"创建模式"选项后,将打开一个新的模式窗口,如下图所示。现在我们可以输入数据库名称(例如 testdb)并使用默认排序规则。然后点击"应用"按钮。

mysql

步骤 4 − 点击"应用"按钮后,将打开一个新窗口。点击"应用"按钮,然后点击"完成"按钮。

步骤 5 − 现在,我们可以在模式菜单中看到上面创建的 testdb 数据库。如果看不到,请点击模式菜单右上角的刷新按钮。

mysql

注意 − 如果想查看更多关于 testdb 数据库的信息,请点击 testdb 数据库,然后点击 i 图标。信息窗口显示各种选项,例如表、列、索引、触发器等等。

在 MySQL Workbench 中删除数据库

同样,我们也可以使用 Workbench 删除数据库。以下是使用 MySQL Workbench 删除数据库的步骤 -

步骤 1 - 要在 MySQL Workbench 中删除数据库,请右键单击要删除的特定数据库,然后单击"删除架构"选项,如下图所示。

在这里,我们尝试删除之前创建的数据库 testdb。

mysql

步骤 2 - 现在将打开一个新窗口,单击"立即删除"选项,如下图所示。

mysql

MySQL Workbench 创建、修改和删除表

我们可以使用 MySQL Workbench 应用程序创建、修改和删除表。让我们逐步了解这些操作。

创建表

以下是使用 MySQL Workbench 创建表的步骤 -

步骤 1 - 打开 MySQL Workbench,使用用户名和密码登录。然后,点击窗口左上角的"模式"菜单。在这里,我们可以找到 MySQL 服务器中存在的所有数据库。

步骤 2 − 现在,双击之前创建的 testdb 数据库,我们可以看到数据库下的子菜单,例如表、视图、函数和存储过程,如下图所示。

mysql

步骤 3 − 现在,右键单击 ,然后点击 创建表 选项。或者,我们可以通过点击上图中红色轮廓突出显示的表按钮来创建表。

步骤 4 − 点击创建表选项后,将显示以下内容。然后我们需要输入表的名称(例如,employees),并使用默认的排序规则和引擎。

mysql

步骤 5 - 现在,点击表字段并输入列名。我们还可以选择列的属性,例如主键 (PK)、非空 (NN)、唯一键 (UQ) 等等。提供所有详细信息后,点击"应用"按钮。

步骤 6 - 点击"应用"按钮后,将打开一个 SQL 语句窗口,然后我们需要点击"应用"按钮和"完成"按钮来保存更改。

步骤 7 - 现在,返回"模式"菜单,并选择包含新创建的employees表的数据库。在那里,我们可以找到提供给表的所有数据。

mysql

修改表

以下是使用 MySQL Workbench 修改表的步骤 -

步骤 1 - 选择要修改的表,然后点击 i 图标。这里,我们修改之前创建的employees表。

mysql

步骤2 − 点击"i"图标后,将显示以下内容,我们可以在其中找到修改表的列、索引和其他数据类型等的选项。修改完成后,点击"分析表"按钮保存更改。

mysql

删除表

以下是使用 MySQL Workbench 删除表的步骤 −

步骤1 − 要删除表,我们需要选择要删除的特定表。然后,右键单击该表并选择"删除表"选项。这里,我们删除了员工表。

mysql

步骤 2 − 将打开一个新窗口,点击立即删除选项即可从数据库中删除该表。

mysql

MySQL Workbench 插入和删除表行

让我们看看如何使用 MySQL Workbench 应用程序插入和删除表行。

插入行

以下是使用 MySQL Workbench 将行插入表的步骤 -

步骤 1 − 打开 MySQL Workbench。然后点击窗口左上角的"Schemas"菜单。在这里,我们可以看到之前创建的数据库 (testdb) 和表 (employees)。

步骤 2 − 首先双击 testdb 数据库,然后双击"Tables"。现在,如果我们将鼠标悬停在"employees"表上,将会出现一个表图标。点击该表图标。

mysql

步骤 3 − 现在,点击相应的列或行以插入值。

mysql

步骤 4 − 插入值后,点击"应用"按钮。然后会打开一个新的 SQL 语句窗口,点击"应用"和"完成"按钮保存记录。如果我们想要修改记录,可以按照之前讨论的步骤进行。

删除行

以下是使用 MySQL Workbench 从表中删除行的步骤 -

步骤 1 - 要从表中删除单个行,我们只需右键单击该行,然后点击"删除行"选项,如下所示。此处,我们删除了第一行(即 ID = 1)。

mysql

步骤 2 - 选择"删除行"选项后,将打开一个新窗口。然后,点击"应用"和"完成"按钮保存更改。在下图中,我们可以看到第 1 行(即 ID =1)已被删除。

mysql

MySQL Workbench 导出和导入数据库

让我们看看如何使用 MySQL Workbench 应用程序导出和导入数据库。

导出数据库

以下是使用 MySQL Workbench 导出数据库的步骤 -

步骤 1 - 要导出数据库,请转到窗口顶部的菜单栏,然后​​单击服务器选项。点击后,选择数据导出选项。

mysql

步骤 2 − 将打开一个新的数据导出窗口。现在,选择数据库 (testdb),它将显示其中所有对应的表。

mysql

步骤 3 − 现在,点击下拉设置,我们将看到三个选项,例如"转储结构和数据"、"仅转储数据"和"仅转储结构"。

  • 转储结构和数据 − 此选项将同时导出表结构和数据记录。

  • 仅转储数据 − 这将仅导出表中的记录。

  • 仅转储结构 − 这将仅导出表结构,即我们定义的列和数据类型。

步骤 4 − 选择"转储结构和数据"选项。然后在导出选项中,我们可以看到两个选项,用于选择导出路径,如下所示:-

  • 导出到转储项目文件夹 - 此选项会将所有表导出为单独的 SQL 文件,并保存在一个文件夹中。建议在逐个导入导出文件时使用此选项。

  • 导出到独立文件 - 此选项会将所有数据库和表导出到一个 SQL 文件中。建议在导入所有数据库、表和数据行时使用此选项。

步骤 5 - 选择"导出到转储项目文件夹"选项,然后点击开始导出按钮。然后会显示一个进度条,如下图所示。

mysql

步骤 6 − 现在,我们可以在导出时在提供的路径中找到导出的文件。

导入数据库

以下是使用 MySQL Workbench 导入数据库的步骤 −

步骤 1 − 要导出数据库,请转到窗口顶部的菜单栏,然后​​点击服务器选项。点击后,选择数据导入选项。

mysql

步骤 2 − 将打开一个新的数据导入窗口。这里有两个选项:"从转储项目文件夹导入"和"从自包含文件导入"。

步骤 3 − 现在,我们将选择"从转储项目文件夹导入"选项,然后点击"加载文件夹内容"以显示项目文件夹中所有可用的数据库。

步骤 4 − 现在,从数据导入选项中选择 testdb 数据库,并选择相应的员工表。

mysql

步骤 5 − 选择"转储结构和数据"选项,然后点击"开始导入"按钮,从导出的文件导入数据库。

mysql

步骤 6 −现在,转到模式菜单并单击员工,再次单击表格以查看导入的表格。