在我重新发明轮子之前,有一个简单的工具可以执行类似于laravel但使用标准SQL的模式迁移吗?
许多架构迁移工具只根据前缀大于当前表增量的数字前缀应用迁移文件。
我对按顺序遍历迁移目录中的所有文件(数字前缀)的工具更感兴趣,并将任何MISSING(从数据库迁移表)sql迁移文件应用到数据库。
喜欢FOSS并且不会在床上踢回滚功能。
答案 0 :(得分:0)
Flyway似乎非常合适 - 它适用于迁移目录中的纯SQL文件,并使用数据库表来跟踪已应用于目标数据库的迁移。
答案 1 :(得分:0)
不确定它是否满足您的所有需求,但在工作中我们使用liquibase控制数据库架构。我不是这里的DBA,所以从开发的角度来看,它非常简单。我们只使用我们的SQL创建一个yaml文件,并在git repo中进行常规提交,PR等。所以这很直观。
答案 2 :(得分:0)
工具FlywayDB和Liquibase都非常适合处理数据库迁移。
这两个工具都是根据“Apache 2.0许可证”获得许可的。所以你有可能做出贡献,源代码是公共托管在Github上的。
FlywayDB的版本号更多,并将迁移存储在表格中。您请求的数字前缀。
Liquibase适用于变更集,顺序取决于changelog文件中的变更集顺序。
答案 3 :(得分:0)
如果您正在寻找一种非常简单的替代方法(但仍然功能强大),请查看dbmate
答案 4 :(得分:0)
这不是一个通用的答案,但如果您使用 PHP,您应该考虑学说迁移:https://packagist.org/packages/doctrine/migrations