flyway相关内容

如何使用Spring Boot和Flyway为Quartz调度器设置数据库模式?

我有一个Spring Boot应用程序,它使用带有PostgreSQL数据库的Quartz调度器作为存储。我正在将它从使用public模式运行它自己的数据库迁移到使用共享数据库运行,每个应用程序使用一个模式。架构由flyway管理。 在测试期间(使用testcontainers)启动应用程序失败,错误为 Caused by: org.postgresql.util.PSQLExcept ..

Flyway无序迁移

假设我有以下Flyway迁移: V1__CREATE_Table.sql V2__CREATE_Table.sql V4__CREATE_Table.sql 这些迁移已应用到我的数据库。是否可以添加以下脚本: V3__CREATE_Table.sql 并让Flyway毫无怨言地运行此迁移? 推荐答案 Flyway 2具有flyway.outOfOrder属性 ..
发布时间:2022-04-13 16:28:16 其他开发

cf run-task是否需要在运行前上传env/script?优雅的方式?

我在云铸造厂工作。我的需要是在我的应用程序之外运行数据库迁移,以便我可以在需要时以某种方式(cf命令、API调用等)触发迁移。 建议我使用cf run-task。经过检查,我的理解是cf run-task是cf空间的&q;SSH客户端&接口,因为我们甚至可以将"echo 1"作为cf任务运行。我在官方cf CLI文档或一些在线指南上看到的示例显示cf run-task my-app "bin ..
发布时间:2022-03-13 20:48:56 Java开发

Postgres:为不同角色/用户创建的未来表授予对角色/用户的访问权限

我正在构建一个 Spring Boot 应用程序.Flyway 数据库迁移在应用程序启动时执行. 我决定使用两个不同的角色:role__app(read/write 对表的权限,app 架构中的序列)和 role__migration(应用程序/迁移架构中的高级权限). Flyway 迁移在 role__migration 下执行,因此它成为创建对象的所有者.我认为以下陈述会有所帮助: ..
发布时间:2022-01-23 09:53:34 其他开发

Flyway 数据库迁移到多个模式

我已经为我的多租户应用程序设置了一个迁移脚本.问题是.它只为我在参数上指定的第一个租户/模式生成脚本.这是我的 sql 脚本 如果存在 ADMIN_ACCOUNT 级联则删除表;如果存在 PERSON_NAME 级联,则删除表;如果存在 USER_ACCOUNT 级联,则删除表;创建表 ADMIN_ACCOUNT (id int8 不为空,created_date 时间戳,密码 varchar( ..
发布时间:2022-01-23 09:50:26 Java开发

使用 Flyway 迁移存储过程

应该如何使用像 Flyway 这样的数据库迁移工具来管理像存储过程这样的过程数据库代码? 与 DDL 不同,我不希望看到对存储在多个数据库迁移文件中的存储过程的更改.如何在源代码控制下在单个文件中管理程序代码,同时利用 Flyway 之类的工具进行数据库迁移? 解决方案 框架中没有专门的构造来处理这个问题.主要是因为我还没有找到让我满意的方法. 更新: 现在从 Flyway 4 ..
发布时间:2022-01-23 09:42:10 其他开发

Flyway 的迁移前和迁移后脚本

我正在寻找一种在迁移前后执行挂钩脚本的方法.我有一堆视图和存储过程,希望这个过程是: 删除所有视图和存储过程. 运行迁移. 重建视图和存储过程. 这可确保对架构的任何更改都反映在相关视图和存储过程中.步骤 (1) 和 (3) 将是 bash 脚本. 这在 Flyway 中可行吗? 解决方案 2014-04-29 更新: 现在,通过实现 FlywayCallback 接 ..
发布时间:2022-01-23 09:33:47 其他开发

Spring Boot:Hibernate 和 Flyway 引导顺序

我已经创建了 Spring 应用程序.附上pom xml. 它有这样的配置(如下)和一些用于 Flyway 数据库迁移工具的 db/migration/V1__init.sql. 它有 hsqldb 内存数据库,它是在应用程序启动后创建的.创建后很干净. 我希望 Hibernate 创建基于实体类的模式,然后 Flyway 填充表.现在 Flyway 在创建表之前启动 V1__i ..
发布时间:2022-01-01 08:11:24 Java开发

Elasticsearch 的 Liquibase 或 Flyway 数据库迁移替代方案

我对 ES 还很陌生.我一直在尝试搜索数据库迁移工具,但找不到.我想知道是否有人可以帮助我指出正确的方向. 我将使用 Elasticsearch 作为我项目中的主要数据存储.我想对我在项目中开发新模块时运行的所有映射和配置更改/数据导入/数据升级脚本进行版本控制. 过去我使用过数据库版本控制工具,如 Flyway 或 Liquibase. 是否有任何框架/脚本或方法可以与 ES ..
发布时间:2021-12-13 12:02:52 Java开发

在混合迁移文件夹中忽略了基于Flyway Java的迁移

我将sql迁移放置在项目的recourses文件夹中,但是随后我们需要创建一个基于Java的迁移,并将其放置在同一文件夹中: http://i.stack.imgur.com/J8XEH.png 由于某些原因,基于Java的迁移被完全忽略: http://i.stack.imgur.com/9mqkk.png 我不能将两种类型的迁移混合在一起吗? 解决方案 基于Java的迁移必 ..
发布时间:2021-05-08 20:44:36 Java开发

从Java代码使用Flyway创建新架构

我们已经在代码库中引入了Flyway.以前,我们在公共模式中存储了Postgres函数,并使用该函数复制租户模式以创建具有与租户模式相同结构的新模式.回购代码如下: @存储库公共接口TenantRepository扩展了JpaRepository.{@Query(nativeQuery = true,值="SELECT clone_schema(:defaultSc ..
发布时间:2021-05-08 20:44:31 Java开发

有什么方法可以禁用从事务中进行的flyway SQL迁移

我正在尝试执行Flyway迁移以删除全文本索引,但无法在迁移内部运行: 在BusinessEntity上拖放全文索引 它抛出一个错误: 消息:DROP FULLTEXT INDEX语句不能在用户事务内使用. 据我从文档了解: Flyway在单独的事务中运行每个迁移. 我很有趣,是否有任何方法可以在迁移之外运行SQL代码,或者以某种方式将其关闭? 解决方案 此问 ..
发布时间:2021-05-08 20:44:27 数据库

Spring Boot 2.2.1 H2失败?

我有一个Spring Boot 2.2.0,H2和Flyway正常运行的项目.Spring Boot 2.2.1刚刚发布(因此我获得了Dependabot PR),现在我的迁移失败了(路径/表名/列已清除): org.springframework.beans.factory.BeanCreationException:创建在类路径资源[org/springframework/boot/aut ..
发布时间:2021-05-08 20:44:24 其他开发

如何在单个架构和多个项目中使用Flyway迁移

如何管理处理同一数据库模式的多个项目.如果每个项目中的Flyway迁移脚本都被另一个项目修改,则不允许启动. 例如: 我有一个带有FlywayInitializer类的Spring Boot ProjectX. @PostConstruct公共无效的migrateFlyway(){最终的Flyway飞行路线=新的Flyway();flyway.setSchemas("schema1 ..
发布时间:2021-05-08 20:44:20 其他开发

飞路失控无法正常工作

我正在尝试使用Maven在“生产支持"分支(即V3.1)上应用无序迁移.3.1分支具有从3.1.0.1到3.1.0.12的12个迁移.前11个已经应用,在我的开发环境中,我已经从下一个版本3.3中进行了两次迁移.信息看起来像这样: + ---------------- + ---------------------------- + --------------------- + ------- ..
发布时间:2021-05-08 20:44:17 其他开发

如何测试飞行路线迁移?

通常,迁移脚本很简单,例如添加新列等,如果部署了应用程序,则一切正常.但有时涉及一些复杂的逻辑,应该进行测试.推荐的方法是什么? 解决方案 有一个单独的数据库进行测试.将其作为每个构建的一部分进行迁移,并对其进行测试.您还可以通过添加第二个用于测试数据迁移的位置,根据需要填充额外的测试数据. 主要位置: V1__Initial.sql V2__More_changes.sql ..
发布时间:2021-05-08 20:44:14 Java开发

使用Spring Boot运行基于Flyway Java的回调

是否可以通过Spring Boot运行基于Flyway Java的回调?我正在转换一个现有项目,该项目在每次迁移后都会更新一些视图定义,这是由Java完成的,因为它需要一些额外的逻辑.我知道可以在pl/pgsql(我们使用的是Postgres)中完成此操作,但是已经在Java中完成并经过了测试. Spring启动文档表示可能,但已列出回调脚本应与迁移保存在同一目录中,也许这仅适用于基于SQL ..
发布时间:2021-05-08 20:44:08 Java开发