首页
在线工具
搜索
1
使用Metrics指标度量工具监控Java应用程序性能(Gauges, Counters, Histograms, Meters和 Timers实例)
2
如何将Virtualbox和VMware虚拟机相互转换
3
Jumpserver的MFA配置
4
Kuboard与KubeSphere的区别:Kubernetes管理平台对比
5
Markdown正确使用姿势
杂谈与随笔
工具与效率
源码阅读
技术管理
运维
数据库
前端开发
后端开发
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日