如何使用MySQL Workbench操作ER图

MySQL Workbench 作为 MySQL 官方出品的数据库 GUI 管理工具,它的强大是其他免费管理工具无法匹敌的。特别是使用 MySQL Workbench 设计数据库,创建及同步 ER 图(实体关系图)的功能甚是强大。

MySQL Workbench 不仅可以直接在软件中设计数据库 ER 实体关系图,而且还可以直接通过这个实体关系图,自动创建 MySQL 数据库(正向工程),也可以反过来,通过已有的 MySQL 数据库,生成 ER 图(逆向工程),当然,更厉害的地方是,可以在 MySQL ER 图上直接修改,MySQL 数据库会自动同步更新(模式同步)。

一、如何逆向MySQL数据库ER图

  • 选择逆向,点击 Next
如何使用MySQL Workbench操作ER图
  • 在 MySQL Workbench 主界面的菜单栏选择「Database」→ 「Reverse Engineer…」

连接需要通过 MySQL Workbench 直接生成 ER 图的数据库。(有关如何远程连接的教程可看我们前一篇教程:如何使用Workbench连接到MySQL)

如何使用MySQL Workbench操作ER图
  • 完成数据库连接,点击 Next
如何使用MySQL Workbench操作ER图
  • 选择需要逆向的数据库,点击 Next
如何使用MySQL Workbench操作ER图
  • 选择需要逆向的表,点击 Execute
如何使用MySQL Workbench操作ER图
  • 逆向完成
如何使用MySQL Workbench操作ER图

到这里,我们已经可以看到, MySQL Workbench 将我们选中的数据库生成了对应的 ER 图。

  • Diagram命名
如何使用MySQL Workbench操作ER图
  • 保存
如何使用MySQL Workbench操作ER图
如何使用MySQL Workbench操作ER图

二、如何使用模式同步功能,同步本地ER图与MySQL数据库

模式同步是指 MySQL Workbench 会比较 ERD 和 物理数据库中模式结构的差异,针对这个差异进行双向同步。也就是说,当我们在 ER 图上创建一个新表并配置好表属性后,我们的物理数据库中也将同步更新。

1、在ER图中创建新表

如何使用MySQL Workbench操作ER图
点击创建表功能,进入数据库表配置页。
我们可以直接在 ER 图上创建一个新表 oss_app,然后对这个新表进行基本的配置。
Workbench 会在画布上生成一个对应的数据库表。

这时候,创建的表仅显示在本地画布上,下面我们要把这个新建表同步到远端 MySQL 服务器上。

2、将更新后的ER图同步至物理数据库

  • 接着我们将刚刚在 ER 图上画的 oss_app 这个表同步到物理数据库中。选择「Database」→「Synchronize Model」 进入同步配置页。
如何使用MySQL Workbench操作ER图
  • 连接需要同步的远程数据库服务器(如果这里你不会配置,请看我们之前的教程Workbench连接到MySQL)
如何使用MySQL Workbench操作ER图
  • 连接到远程 MySQL 服务器后,选择需要同步的远端数据库。
如何使用MySQL Workbench操作ER图
  • Workbench 会根据两边的数据提示你数据同步方向,当然你也可以选择反向同步或者忽略差异。
如何使用MySQL Workbench操作ER图
如何使用MySQL Workbench操作ER图
  • 一切确认后,Workbench 会帮你写好 SQL 代码,检查无误后就可以提交了。
如何使用MySQL Workbench操作ER图

同步成功,此时本地 ER 图和远程 MySQL 数据库,数据结构保持一致。

三、如何导出ER图与远程协同工作

Workbench 提供多种格式的导出方式,不仅可以导出数据库模型(*.mwb)也可以导出可视化的图片文件(pdf、png)等。

如果使用 *.mwb 格式保存,可将文件共享给需要协同的同事,他可在你的基础上继续对数据库进行编辑,以及 sync 修改数据库结构。

当然我们也可以直接保存为 png 格式,不论是自己查看还是共享给协同工作的同事,都是非常好的数据库查询资料。

  • 直接导出 PNG 格式
如何使用MySQL Workbench操作ER图

四、如何增加外键

如何使用MySQL Workbench操作ER图
版权声明:千度导航 发表于 2022年9月5日 20:48。
转载请注明:如何使用MySQL Workbench操作ER图 | 千度百科

相关文章

暂无评论

暂无评论...