![0106fbc6f7228a64d1f8c2cda987b152.png](https://img-blog.csdnimg.cn/img_convert/0106fbc6f7228a64d1f8c2cda987b152.png)
MySQLWorkbench 是一款专为 MySQL 设计的集成化桌面软件,也是下一代的可视化数据库设计、管理的工具,它同时有开源和商业化两个版本。该软件支持 Windows 和 Linux 系统,可以从 https://dev.mysql.com/downloads/workbench/下载。
如果想了解学习MySQL 和大数据知识,参考北京尚学堂!
MySQL Workbench 是可视化数据库设计软件,为数据库管理员和开发人员提供了一整套可视化的数据库操作环境,主要功能有数据库设计与模型建立、SQL 开发(取代 MySQL Query Browser)、数据库管理(取代 MySQL Administrator)。
MySQL Workbench 有两个版本:
- MySQL Workbench Community Edition(也叫 MySQL Workbench OSS,社区版),MySQL Workbench OSS 是在GPL证书下发布的开源社会版本。
- MySQL Workbench Standard Edition(也叫 MySQL Workbench SE,商业版本),MySQL Workbench SE 是按年收费的商业版本。
MySQL Workbench 的初始界面如下图所示。
![eed02cb7e4dbb372a8547058f57ba18c.png](https://img-blog.csdnimg.cn/img_convert/eed02cb7e4dbb372a8547058f57ba18c.png)
使用 Workbench 操作数据库
打开 MySQL Workbench 软件,如下图所示,方框标识的部分就是当前数据库服务器中已经创建的数据库列表。
在 MySQL 中,SCHEMAS 相当于 DATABASES 的列表。在 SCHEMAS 列表的空白处右击,选择 Refresh All 即可刷新当前数据库列表。
![82fab5350d96a4ebb9f36e2d01d51c09.png](https://img-blog.csdnimg.cn/img_convert/82fab5350d96a4ebb9f36e2d01d51c09.png)
1) 创建数据库
在 SCHEMAS 列表的空白处右击,选择“Create Schema…”,则可创建一个数据库,如下图所示。
![71fea76792b7f4d84a747e5d141f8546.png](https://img-blog.csdnimg.cn/img_convert/71fea76792b7f4d84a747e5d141f8546.png)
在创建数据库的对话框中,在 Name 框中输入数据库的名称,在 Collation 下拉列表中选择数据库指定的字符集。单击 Apply 按钮,即可创建成功,如下图所示。
![cc1f0741fb717cd24fdc84186e6012f5.png](https://img-blog.csdnimg.cn/img_convert/cc1f0741fb717cd24fdc84186e6012f5.png)
在创建数据库的对话框中设置完成之后,可以预览当前操作的 SQL 脚本,即 CREATE DATABASE test_db,然后单击 Apply 按钮,最后在下一个弹出的对话框中直接单击 Finish 按钮,即可完成数据库 test_db 的创建,如下图所示。
![6f779fde9a8d81205c21b01dd677b9f7.png](https://img-blog.csdnimg.cn/img_convert/6f779fde9a8d81205c21b01dd677b9f7.png)
使用同样的方法创建数据库 test_db_char,指定字符集默认为UTF-8。
2) 修改数据库
成功创建数据库后,可以修改数据库的字符集,在需要修改字符集的数据库上右击,选择“Alter Schema…”选项,即可修改数据库指定的字符集,如下图所示。
![aa383e487c881d96e38dfaa5f21e0463.png](https://img-blog.csdnimg.cn/img_convert/aa383e487c881d96e38dfaa5f21e0463.png)
在修改数据库的对话框中,数据库的名称不可以修改,在 Collation 下拉列表中选择数据库需要修改为的字符集。单击 Apply 按钮,即可创建成功,如下图所示。
![303bee4295bdc7375cc6b5a4558ed0ff.png](https://img-blog.csdnimg.cn/img_convert/303bee4295bdc7375cc6b5a4558ed0ff.png)
3) 删除数据库
可以在 SCHEMAS 列表中删除数据库,在需要删除的数据库上右击,选择“Drop Schema…”,如下图所示。
![7b5a03d12226e08acc27fd3bbde7a5e5.png](https://img-blog.csdnimg.cn/img_convert/7b5a03d12226e08acc27fd3bbde7a5e5.png)
在弹出的对话框中单击 Drop Now 按钮,即可直接删除数据库,如下图所示。
![2b43d8efadbd27bf3bb886a064acb7a5.png](https://img-blog.csdnimg.cn/img_convert/2b43d8efadbd27bf3bb886a064acb7a5.png)
若单击 Review SQL 按钮,则可以显示删除操作对应的 SQL 语句。单击 Execute 按钮就可以执行删除操作,如下图所示。
![581cba26b94c1cf77d11f8e3614cef05.png](https://img-blog.csdnimg.cn/img_convert/581cba26b94c1cf77d11f8e3614cef05.png)
4) 设置默认数据库
在 SCHEMAS 列表中可以选择默认的数据库,在需要指定默认的数据库上右击,选择 Set As Default Schema,如下图所示。该操作相当于命令行工具中的 USE<database_name> 命令。
![dc3cec4c1441010425261ce356ae57b0.png](https://img-blog.csdnimg.cn/img_convert/dc3cec4c1441010425261ce356ae57b0.png)
数据库 test_db 被设置为默认数据库之后,SCHEMAS 列表中的 test_db 字体会被加粗显示,如下图所示。
![0bd5fd54c808586784136ccbf7cfc94d.png](https://img-blog.csdnimg.cn/img_convert/0bd5fd54c808586784136ccbf7cfc94d.png)
使用 Workbench 操作数据表
1) 创建数据表
打开 MySQL Workbench 软件,在 SCHEMAS 列表中展开当前默认的 test_db 数据库,在 Tables 菜单上右击,选择“Create Table…”,即可在 test_db 数据库中创建数据表,如下图所示。
![4129056e42c2448b16e028493b99e3dd.png](https://img-blog.csdnimg.cn/img_convert/4129056e42c2448b16e028493b99e3dd.png)
在创建数据表的对话框中,在 Table Name 框中输入数据表的名称,在图中的方框部分编辑数据表的列信息,编辑完成后,单击 Apply 按钮,即可成功创建数据表,如下图所示。
![7a2eb4abcbd9523c776b8493af05b366.png](https://img-blog.csdnimg.cn/img_convert/7a2eb4abcbd9523c776b8493af05b366.png)
设置完成之后,可以预览当前操作的 SQL 脚本,然后单击 Apply 按钮,最后在下一个弹出的对话框中直接单击 Finish 按钮,即可完成数据表 tb_emp1 的创建,如下图所示。
![166226b816ae31452c1c70d4eff21d45.png](https://img-blog.csdnimg.cn/img_convert/166226b816ae31452c1c70d4eff21d45.png)
2) 查看数据表
成功创建数据表后,可以查看数据表的结构信息,在需要查看表结构的数据表上右击,选择 Table Inspector 选项,即可查看数据表的结构,如下图所示。
![7563e46a353a19ffb546041aa8ec016e.png](https://img-blog.csdnimg.cn/img_convert/7563e46a353a19ffb546041aa8ec016e.png)
在查看数据表的对话框中,Info 标签显示了该数据表的表名、存储引擎、列数、表空间大小、创建时间、更新时间、字符集校对规则等信息,如下图所示。
![96ddd13bfabced0e5a14e6b492c28b99.png](https://img-blog.csdnimg.cn/img_convert/96ddd13bfabced0e5a14e6b492c28b99.png)
在 Columns 标签显示了该表数据列的信息,包括列名、数据类型、默认值、非空标识、字符集、校对规则和使用权限等信息,如下图所示。
![32f0bb0b40925ebfaf9c63ba7c22e54a.png](https://img-blog.csdnimg.cn/img_convert/32f0bb0b40925ebfaf9c63ba7c22e54a.png)
3) 修改数据表
在 SCHEMAS 界面的 test_db 数据库中,在需要修改表结构的数据表上右击,选择“Alter Table…”选项,即可修改数据表的基本信息和数据表结构,如下图所示。
![e7abb8fa1893c55cb1347302e6f1cef4.png](https://img-blog.csdnimg.cn/img_convert/e7abb8fa1893c55cb1347302e6f1cef4.png)
在修改数据表的对话框中,如下图所示,在 Table Name 框中可以修改数据表的名称,在图中的方框部分编辑数据表的列信息,包括编辑列名、编辑数据类型、新建列、删除列,通过上下拖曳可以调整列的顺序,在数据列上右击即可删除该列。编辑完成后,单击 Apply 按钮,即可成功修改数据表。
![11cd6646845d509e38fa3cf2dda3c260.png](https://img-blog.csdnimg.cn/img_convert/11cd6646845d509e38fa3cf2dda3c260.png)
设置完成之后,可以预览当前操作的 SQL 脚本,然后单击 Apply 按钮,最后在下一个弹出的对话框中直接单击 Finish 按钮,即可完成数据表 tb_emp1 的修改,如下图所示。
![089983b05f851ce3e91f46bb3722d82b.png](https://img-blog.csdnimg.cn/img_convert/089983b05f851ce3e91f46bb3722d82b.png)
4) 删除数据表
可以在 SCHEMAS 中的 test_db 数据库的 Tables 列表中删除数据表,在需要删除的数据表上右击,选择“Drop Table…”,如下图所示。
![f125f3dd51048cdb5690311ceb8528ae.png](https://img-blog.csdnimg.cn/img_convert/f125f3dd51048cdb5690311ceb8528ae.png)
在弹出的对话框中单击 Drop Now 按钮,可以直接删除数据表,如下图所示。
![e6b8f3e6a3fa0bdc9844398769701979.png](https://img-blog.csdnimg.cn/img_convert/e6b8f3e6a3fa0bdc9844398769701979.png)
若在弹出的对话框中单击 Review SQL 按钮,则可以显示删除操作对应的 SQL 语句,单击 Execute 按钮就可以执行删除操作,如下图所示。
![d6a41b76feccf658f4bbae6734e3adb3.png](https://img-blog.csdnimg.cn/img_convert/d6a41b76feccf658f4bbae6734e3adb3.png)
主键约束
在 MySQL Workbench 中,在修改表的对话框中,控制 PK 列的勾选情况,即可操作数据表的主键约束,当勾选 PK 复选框时,该列就是数据表的主键;当取消勾选 PK 复选框时,则取消该列的主键约束。单击 Apply 按钮即可完成表的修改,如下图所示。
![4e4bb7067b1e8259acf23f6204ae05ba.png](https://img-blog.csdnimg.cn/img_convert/4e4bb7067b1e8259acf23f6204ae05ba.png)
外键约束
在 MySQL Workbench 中,打开修改数据表的对话框,进入 Foreign Keys 标签,首先在 Foreign Key Name 中填入外键名称,其次在 Referenced Table 中选择当前数据库中的数据表,然后选择设置外键的字段,接着选择主表的关联字段,最后单击 Apply 按钮即可完成外键的添加操作,如下图所示。
![7f76b8b938214f0e7b89ace6d8f8701a.png](https://img-blog.csdnimg.cn/img_convert/7f76b8b938214f0e7b89ace6d8f8701a.png)
设置完成之后,可以预览当前操作的 SQL 脚本,然后单击 Apply 按钮,最后在下一个弹出的对话框中直接单击 Finish 按钮,即可完成数据表 tb_emp2 中外键的创建,如下图所示。
![664130b1ce7192d6b1b43af00b904a9f.png](https://img-blog.csdnimg.cn/img_convert/664130b1ce7192d6b1b43af00b904a9f.png)
在外键约束的列表中,在需要删除的外键上右击,选择 Delete selected 选项,删除对应的外键,单击 Apply 按钮,即可完成删除,如下图所示。
![453ec2c3d04a906362a603a069adb3f3.png](https://img-blog.csdnimg.cn/img_convert/453ec2c3d04a906362a603a069adb3f3.png)
设置完成之后,可以预览当前操作的 SQL 脚本,然后单击 Apply 按钮,最后在下一个弹出的对话框中直接单击 Finish 按钮,即可完成数据表 tb_emp2 中外键的删除,如下图所示。
![98e7dcd57fefc8fec8712c69becde32d.png](https://img-blog.csdnimg.cn/img_convert/98e7dcd57fefc8fec8712c69becde32d.png)
唯一约束
在 MySQL Workbench 中,在修改数据表的对话框中,控制 UQ 列的勾选情况,即可操作数据表的唯一约束,当勾选 UQ 复选框时,该列就是数据表的唯一约束索引;当取消勾选 UQ 复选框时,则取消该列的唯一约束索引。单击 Apply 按钮即可完成表的修改,如下图所示。
![c7782a8d1bc33abc169bac544f341449.png](https://img-blog.csdnimg.cn/img_convert/c7782a8d1bc33abc169bac544f341449.png)
默认值约束
在 MySQL Workbench 中,在修改数据表的对话框中,在 Default/Expression 列中编辑字段的默认值。单击 Apply 按钮即可完成表的修改,如下图所示。
![d86fe6d20dbdd1cc6b06f126653431b1.png](https://img-blog.csdnimg.cn/img_convert/d86fe6d20dbdd1cc6b06f126653431b1.png)
非空约束
在 MySQL Workbench 中,在修改数据表的对话框中,控制 NN 列的勾选情况,即可操作数据表的非空约束。当勾选 NN 复选框时,该列为数据表的非空约束;当取消勾选 NN 复选框时,则取消该列的非空约束。单击 Apply 按钮即可完成表的修改,如下图所示。
![8bfa19c05f5a7801c43017922e7377ac.png](https://img-blog.csdnimg.cn/img_convert/8bfa19c05f5a7801c43017922e7377ac.png)
编辑表中的数据
打开 MySQL Workbench 软件,在 SCHEMAS 列表中展开当前默认的 test_db 数据库,展开 Tables 菜单,在 tb_courses 表上右击,选择 Select Rows–Limit 1000,即可对 tb_courses 表中的数据进行编辑操作,如下图所示。
![6fb46c7462cce7a15faa39654d444eda.png](https://img-blog.csdnimg.cn/img_convert/6fb46c7462cce7a15faa39654d444eda.png)
在弹出的对话框中,Edit 菜单栏中包含三个按钮,分别为“修改”“插入”和“删除”。单击 Apply 按钮,即可保存修改,如下图所示。
![e320843a565516402e2d854e462ccd85.png](https://img-blog.csdnimg.cn/img_convert/e320843a565516402e2d854e462ccd85.png)
在编辑数据表的对话框中设置完成之后,可以预览当前操作的 SQL 脚本,然后单击 Apply 按钮,最后在下一个弹出的对话框中直接单击 Finish 按钮,即可完成数据表 tb_courses 中数据的修改,如下图所示。
![81bee5afa4fb750955579fc1c748d650.png](https://img-blog.csdnimg.cn/img_convert/81bee5afa4fb750955579fc1c748d650.png)
视图
1) 创建视图
打开 MySQL Workbench 软件,在 SCHEMAS 列表中展开当前默认的 test_db 数据库,在 Views 菜单上右击,选择“Create View…”,即可创建一个视图,如下图所示。
![c476e78a8811652e662b45a93650d6db.png](https://img-blog.csdnimg.cn/img_convert/c476e78a8811652e662b45a93650d6db.png)
在编辑视图的对话框中,如下图所示,设置视图名称和视图的定义。编辑完成后,单击 Apply 按钮,即可成功创建视图。
![5b83529b8f512d147cd715ab3ffe130d.png](https://img-blog.csdnimg.cn/img_convert/5b83529b8f512d147cd715ab3ffe130d.png)
设置完成之后,可以预览当前操作的 SQL 脚本,然后单击 Apply 按钮,最后在下一个弹出的对话框中直接单击 Finish 按钮,即可完成视图 view_courses 的创建,如下图所示。
![99b2f358e8b5753b4bf033c15270c62a.png](https://img-blog.csdnimg.cn/img_convert/99b2f358e8b5753b4bf033c15270c62a.png)
2) 查看视图信息
此时,可以在 Views 目录下找到新创建的视图 view_courses,右击 view_courses,选择 Select Rows–Limit 1000 选项,即可查看视图内容,如下图所示。
![48b048897b3814ab0e5a81f3498f45eb.png](https://img-blog.csdnimg.cn/img_convert/48b048897b3814ab0e5a81f3498f45eb.png)
在查看视图内容的对话框中,视图内容为只读,不可修改,如下图所示。
![06fee4990f5db587764230c7504707e1.png](https://img-blog.csdnimg.cn/img_convert/06fee4990f5db587764230c7504707e1.png)
3) 删除视图
可以在 SCHEMAS 的 Views 列表中删除视图,在需要删除的视图上右击,选择“Drop View…”,如下图所示。
![a5130f3884fa84d6b92946215808dcbd.png](https://img-blog.csdnimg.cn/img_convert/a5130f3884fa84d6b92946215808dcbd.png)
在弹出的对话框中单击 Drop Now 按钮,即可直接删除视图,如下图所示。
![e7fce39bf40f64bcd2c0336703ff3356.png](https://img-blog.csdnimg.cn/img_convert/e7fce39bf40f64bcd2c0336703ff3356.png)
若单击 Review SQL,则可以显示删除操作对应的 SQL 语句,单击 Execute 按钮就可以执行删除操作,如下图所示。
![3568147df242a223e66e580271775593.png](https://img-blog.csdnimg.cn/img_convert/3568147df242a223e66e580271775593.png)
存储过程
打开 MySQL Workbench 软件,在菜单栏中单击“新建存储函数”按钮,即可新建存储过程,如下图所示。
![09d1d533eeb0862b57e2470e024dc860.png](https://img-blog.csdnimg.cn/img_convert/09d1d533eeb0862b57e2470e024dc860.png)
在创建存储过程的对话框中,设置存储过程的名称和存储过程的定义,单击 Apply 按钮,即可成功创建自定义函数,如下图所示
![fd0edda15f0f34fcfc963a57dcb1212c.png](https://img-blog.csdnimg.cn/img_convert/fd0edda15f0f34fcfc963a57dcb1212c.png)
设置完成之后,可以预览当前操作的 SQL 脚本,然后单击 Apply 按钮,最后在下一个弹出的对话框中直接单击 Finish 按钮,即可完成存储过程 new_procedure 的创建,如下图所示。
![16e6c772620350961dc74977978dace3.png](https://img-blog.csdnimg.cn/img_convert/16e6c772620350961dc74977978dace3.png)
在 SCHEMAS 界面中,展开 test_db 数据库中的 Stored Procedures 目录,在新创建的存储过程 new_procedure 上右击,可以实现创建存储过程、修改存储过程、删除存储过程等操作,如下图所示。
![45eea12403c8d054827400dfe1e8dcdd.png](https://img-blog.csdnimg.cn/img_convert/45eea12403c8d054827400dfe1e8dcdd.png)
触发器
打开 MySQL Workbench 软件,在 SCHEMAS 界面中,打开 test_db 数据库目录,展开 tb_emp8 的 Triggers 目录,可以查看该数据表相关的触发器,如下图所示。
![3fb06cc2624041ce2b8379a792e6749f.png](https://img-blog.csdnimg.cn/img_convert/3fb06cc2624041ce2b8379a792e6749f.png)
在 SHEMAS 界面中,在 test_db 数据库的右侧单击“信息”按钮,如下图所示。
![27582262c25a3a222dc24d6a3f1460f6.png](https://img-blog.csdnimg.cn/img_convert/27582262c25a3a222dc24d6a3f1460f6.png)
在弹出的数据库信息列表中,选择 Triggers 选项卡,即可查看触发器的详细信息,包括触发器名称、事件类型、关联的数据表和触发条件等信息,如下图所示。
![d2c8d862dab47b8a8022593a279ce2e1.png](https://img-blog.csdnimg.cn/img_convert/d2c8d862dab47b8a8022593a279ce2e1.png)
用户和权限
1) 创建用户
打开 MySQL Workbench 软件,在菜单栏中选择 Server 菜单,在展开的列表中选择 Users and Privileges 选项,进入用户和权限的管理界面,如下图所示。
![422ba3e6688d44112c5baaf896a0e3aa.png](https://img-blog.csdnimg.cn/img_convert/422ba3e6688d44112c5baaf896a0e3aa.png)
进入用户和权限的管理界面,左上角的方框中显示当前数据库中的用户列表,包括数据库系统默认的用户 mysql.session、mysql.sys、root 以及自定义的用户,同时列表中还显示用户的主机名称,如 localhost。在管理界面的左下角可以单击 Add Account 按钮,即可创建一个新用户,如下图所示。
![547e452252edcb10ad7e44039741664d.png](https://img-blog.csdnimg.cn/img_convert/547e452252edcb10ad7e44039741664d.png)
在创建用户界面,可以设置用户名称、认证类型、主机名称、用户密码和确认密码,单击 Apply 按钮,即可完成用户的创建,如下图所示。
![3943b984a1140587f768a476db571d85.png](https://img-blog.csdnimg.cn/img_convert/3943b984a1140587f768a476db571d85.png)
在左侧的用户列表中,选择某个用户,即可查看用户的用户名称、认证类型、主机名称、用户密码等信息。并且可以对用户信息进行修改,修改完成后单击 Apply 按钮,即可完成用户信息的修改,如下图所示。
![98bac5a74204ab9ee94270d080c8fd6d.png](https://img-blog.csdnimg.cn/img_convert/98bac5a74204ab9ee94270d080c8fd6d.png)
2) 删除用户
在用户列表的下方,可以单击 Delete 按钮删除用户,单击 Refresh 按钮刷新用户的列表,如下图所示。
![a856d83d43e0b50724315d1b3a252b09.png](https://img-blog.csdnimg.cn/img_convert/a856d83d43e0b50724315d1b3a252b09.png)