首页
在线工具
搜索
1
Kuboard与KubeSphere的区别:Kubernetes管理平台对比
2
ShardingSphere使用中的重点问题剖析
3
Flowable工作流引擎源码深度解析
4
用AI生成的原型设计稿效果还可以
5
如何将Virtualbox和VMware虚拟机相互转换
杂谈与随笔
工具与效率
源码阅读
技术管理
运维
数据库
前端开发
后端开发
Search
标签搜索
Angular
Docker
Phabricator
SpringBoot
Java
Chrome
SpringSecurity
SpringCloud
DDD
Git
Mac
K8S
Kubernetes
ESLint
SSH
高并发
Eclipse
Javascript
Vim
Centos
Jonathan
累计撰写
86
篇文章
累计收到
0
条评论
首页
栏目
杂谈与随笔
工具与效率
源码阅读
技术管理
运维
数据库
前端开发
后端开发
页面
搜索到
1
篇与
的结果
2017-02-17
flyway与liquibase区别
Flyway 易于配置——你只需要指定一个文件夹位置,并遵循命名语法,如 V1__file.sql 等等。 基于 SQL,但你需要编写符合特定数据库引擎(如 MySQL、DB2 等)的正确语法。 基于 Java,因此添加自定义配置(如清理、执行等操作的配置)会更加容易。 Liquibase 需要一个主文件“changelog(变更日志)”来跟踪所有已执行的变更集。 基于 XML,所以你需要使用特定的 Liquibase 标签来创建 SQL 代码。这对于将代码迁移到不同的数据库引擎来说非常完美:你无需做任何更改,仅需数据库驱动程序告知 Liquibase 如何将 XML 标签转换为正确的 SQL 语法即可。 如果你使用 Liquibase 的 sql 标签,那么你将无法利用上述第二点的优势,在这种情况下,使用 Flyway 会更好。 Liquibase 提供了一个 JAR 文件,可以自动将现有数据库迁移为所有需要的 XML 文件,因此你无需手动处理这些文件,这非常有用。 现在,就需要你根据项目需求来决定使用哪个工具了,比如你是否需要在未来迁移到不同的数据库引擎等等。 梳理总结: Flyway:配置简单,基于 SQL 但依赖特定数据库语法,基于 Java 便于自定义配置。 Liquibase:依赖“changelog”文件跟踪变更,基于 XML 可方便跨数据库引擎迁移(不使用 sql 标签时),有自动将现有数据库转换为 XML 文件的工具,功能较为丰富。选择时需考虑项目未来是否有数据库引擎迁移需求等因素。
2017年02月17日