大家好,又见面了,我是你们的朋友全栈君。
大家好,我是只谈技术不剪发的 Tony 老师。
数据库建模和设计是软件开发过程中必不可少的步骤,一个良好的建模工具可以帮助我们简单快速地完成数据库设计,提高工作的效率。因此,今天给大家推荐几款免费的 MySQL 数据库建模工具,首先给出它们的功能比较:
建模工具 | 支持平台 | ERD | 正向工程 | 逆向工程 | 模式同步 |
---|---|---|---|---|---|
MySQL Workbench | Windows、Linux、macOS | ✔️ | ✔️ | ✔️ | ✔️ |
SQL Power Architect | Windows、Linux、macOS | ✔️ | ✔️ | ✔️ | ✔️ |
PDMan | Windows、Linux、macOS | ✔️ | ✔️ | ✔️ | ✔️ |
RISE | Windows | ✔️ | ✔️ | ✔️ | ✔️ |
GenMyModel | 在线建模 | ✔️ | ✔️ | ✔️ | ❌ |
DB Designer | 在线建模 | ✔️ | ✔️ | ✔️ | ❌ |
dbdiagram.io | 在线建模 | ✔️ | ✔️ | ✔️ | ❌ |
Freedgo | 在线建模 | ✔️ | ✔️ | ✔️ | ❌ |
ERD 是指实体关系图(Entity Relationship Diagram);正向工程(Forward Enginnering)是指从 ERD 生成创建数据库结构的 DDL 脚本(SQL 文件)或者直接连接到数据库创建物理表和其他对象;逆向工程(Reverse Enginnering)和正向工程正好相反,是指从 SQL 脚本或者物理数据库中生成数据模型;模式同步是指比较 ERD 和 SQL 脚本或者物理数据库中模式结构的差异,并且支持数据库结构的同步。
MySQL Workbench
MySQL Workbench 是 MySQL 官方为数据库架构师、开发人员和 DBA 提供的一个可视化工具。 MySQL Workbench 支持数据建模,SQL 开发以及服务器配置、用户管理、性能优化、数据库备份以及迁移等功能,支持 Windows、Linux 和 Mac OS X 平台。
MySQL Workbench 为 DBA、开发人员以及数据架构师提供了一个可视化设计、建模、脚本生成以及数据库管理的界面。它提供了数据建模人员创建复杂的 ER 模型、正向工程、逆向工程以及模式同步所需的一切功能,同时还支持复杂的变更管理和文档生成功能。下图是它的一个可视化设计界面:
MySQL Workbench 社区版可以免费下载使用,同时也提供了收费的企业版本。MySQL Workbench 作为官方的专用管理开发工具,对 MySQL 提供了完善的支持,推荐大家使用。
SQL Power Architect
SQL Power Architect 是一款由数据仓库设计师创建的数据建模工具,具有许多专门为数据仓库架构师设计的独特功能。SQL Power Architect 社区版支持 Windows、Linux 和 Mac OS X 平台,它允许用户对现有数据库进行逆向工程,执行数据分析以及自动生成 ETL 元数据。
SQL Power Architect 主要的功能特性包括:
- 通过 JDBC 访问数多种数据库,包括 Oracle、MySQL、SQL Server、PostgreSQL 等;
- 同时连接多个不同的数据库产品,比较数据模型和数据库结构并且识别差异;
- 支持拖拽的工作方式;
- 可以记住每个字段的来源,生成可视化的源-目标数据映射报告;
- 正向工程/逆向工程;
- 针对现有数据库的数据分析,获取每个字段的数据大小、最大最小值以及频率分布等信息;
- 支持保存源数据结构的快照,允许远程离线设计;
- 自动生成 ETL 元数据(Kettle/Pentaho Data Integration);
- 所有的项目数据使用易于解析的 XML 格式存储;
- OLAP 建模:Cubes、Measures、Dimensions、Hierarchies 以及 Levels;
- 数据沿袭跟踪的可视化映射报告。
SQL Power Architect 是一个功能强大的数据库建模工具,尤其适合数据仓库设计,免费社区版可以在官方网站点击下载。
PDMan
PDMan 是一款开源免费的国产数据库建模工具,定位为 PowerDesigner 的免费替代方案。PDMan 支持 Windows、Linux 和 Mac OS X 平台,具有极简易用、自带案例等特点。
PDMan 主要的功能特点如下:
- 代码开源,免费使用;
- 功能简洁,自带参考案例,非常容易上手;
- Windows、Linux 和 Mac OS X 平均可使用;
- 默认内置 MySQL、Oracle、SQL Server、PostgreSQL 代码模板, 用户可根据模型自定义其他数据库代码模板;
- 根据数据库方言模板生成不同的数据库 DDL 语句;
- 根据模型以及版本生成变更 DDL 语句,直接运行同步至数据库;
- 数据库逆向解析,连接数据库生成模型;
- 自动生成 HTML、Markdown、Word、PDF 格式的数据结构文档;
- 内置代码模板生成 JavaBean,并且自带中文注释。
PDMan 基于 Node.js 开发,源码托管在 Gitee 上,最新版本可以点击下载。PDMan 是一款非常优秀的国产数据库建模工具,只是目前更新频率不高,最新版还是 2019 年 5 月发布的 v2.1.6。
RISE
RISE 是一个用于模型驱动信息系统开发的免费软件套件,它包含构建信息模型并将其转变为完整解决方案所需的各种功能,包括数据库、Web 服务和文档。RISE 基于 Microsoft .NET Framework 4 开发,支持 Windows 平台,包含以下多个工具:
- RISE Editor,图形化建模工具;
- Code generators,各种代码生成工具,包括 SQL Server、MySQL 以及 PostgreSQL 数据库脚本生成工具,C#、PHP、AJAX 应用程序源码生成工具等;
- RISE Visual Modeling,Visual Studio 扩展插件,可以在 Visual Studio IDE 中集成数据库建模和代码生成工具。
RISE 主要的功能包括:
- 完整的实体关系图,支持视图和索引,支持模型导出为图片;
- 自动命名规范,级联变更和命名,模型重构,模型一致性,自动接口生成,模型文档,内置 web service 测试;
- 自动数据库部署和 web 部署,集成云解决方案,集中式服务器开发,支持团队协作;
- 支持浏览数据库表和视图,分析字段信息、通用 SQL 提示,支持 SQL Server、MySQL、PostgreSQL、Oracle、DB2 的逆向工程;
- 数据库脚本生成工具支持 SQL Server、MySQL、PostgreSQL,增量数据库更新,模型支持默认数据生成;
- 应用程序代码生成工具支持 C#、PHP、SOAP web service 以及持久层代码,无需编程基础。
RISE 是一个完整的信息系统工程套件,用于模型驱动的系统开发,可以在官方网站免费下载。
GenMyModel
GenMyModel 是一个基于浏览器的在线建模平台,支持 Archimate、BPMN、Flowchart、RDS(关系型数据库建模)、UML 等模型,个人可以免费使用。GenMyModel 提供了模型验证、在线模型存储库、模型版本记录、SQL 代码生成以及模型导出图片等功能。
DB Designer
DB Designer 是一款在线的数据库模式设计和建模工具,操作简单但功能强大,支持 MySQL、SQL Server、PostgreSQL、Oracle、SQLite 数据库的正向工程和逆向工程。DB Designer 同时还支持团队协作、工作分享和导出图片或 PDF 功能。
dbdiagram.io
dbdiagram.io 是一款简单免费的在线 ER 图绘制工具,通过编写代码创建模型,专为开发人员和数据分析师而设计。它通过一个简单的自定义语言来生成数据模型,支持 MySQL、PostgreSQL、SQL Server 数据库 DDL 文件的正向工程和逆向工程、版本历史、在线共享、导出图片或者 PDF 等功能。dbdiagram.io 提供了免费版。
Freedgo
Freedgo 是一款国产的在线绘图和建模工具,支持思维导图、ER 模型、云架构设计、UML、网络拓扑图、建筑平面图、业务设计、流程图等。其中 ER 模型支持 MySQL、SQLServer、Oracle、PostgreSQL 等数据库 DDL 文件的正向工程和逆向工程以及图片导出功能。Freedgo 提供了个人用户免费版。
总结
本文介绍了 8 款免费的 MySQL 数据库常用建模工具,包括客户端软件和在线工具。客户端软件提供了强大完善的建模功能;在线建模工具无需安装即可使用,功能相对简单一些。除了以上介绍的建模工具之外,你还了解或者使用过那些好用不贵的软件,欢迎推荐!
如果觉得文章对你有用,欢迎关注❤️、评论?、点赞?!
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/126627.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...