最佳实践:使用flyway迁移脚本后如何修改

2024-01-09

我正在寻找以下案例的建议。

我在生产环境中设置了 Flyway 迁移脚本。每次部署时,数据库都会迁移到当前版本。 我已经创建了几个已应用于生产数据库的迁移脚本。

最近我升级了我的 MySQL 开发工具,现在包括有关使用已弃用函数的警告和其他警告。这些警告在旧版本中并未显示。 当然,我想修复这些警告,特别是当数据库的未来版本不再支持已弃用的功能时。 但包含警告的迁移已经部署和使用。如果我更改其中一个脚本,则会出现飞行警告:

ERROR: Validate failed. Migration Checksum mismatch for migration 2.0
-> Applied to database : 1778293504
-> Resolved locally    : 1831545539

我可以更改存储在数据库中的校验和以进行迁移,但这听起来不是一个“好”的方法。 更改迁移脚本的常见方法/最佳实践是什么after已经被使用了吗?


第一条规则是不要。

第二个是非常小心地执行此操作,并使用 Flyway.repair() 将数据库中的校验和与磁盘上的校验和重新对齐。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

最佳实践:使用flyway迁移脚本后如何修改 的相关文章

  • 【SQL管理】-Flyway数据库版本管理利器从入门到入味

    Flyway是什么 Flyway是独立于数据库的应用 管理并跟踪数据库变更的数据库版本管理工具 用通俗的讲 Flyway可以像Git管理不同人的代码那样 管理不同人的sql脚本 整个过程自动化 可回溯 安全可靠 易用高效 且对代码零侵入 非
  • Flyway clean 不会删除调度程序作业或程序

    我最近在我的开发模式中添加了一个调度程序作业和程序 当我尝试刷新架构时 我做了一个飞行路线clean 然后是飞行路线migrate 我收到以下错误 ERROR Found non empty schema TESTDATA without
  • 如何将 Flyway 迁移与单个模式和多个项目一起使用

    如何管理处理相同数据库模式的多个项目 每个项目中的Flyway迁移脚本如果被其他项目修改则不允许启动 例如 我有一个带有 FlywayInitializer 类的 Spring Boot Project X PostConstruct pu
  • 架构 `boxfuse-dev-db` 包含到版本 10 的迁移失败!迁移在本地有效,但在生产或开发中均无效

    我正在开发一个使用 Springboot Boxfuse 和 Flyway 的 Web 应用程序 我创建了以下迁移 V10 UpdateProperty sql 其中包含以下内容 ALTER TABLE property MODIFY CO
  • 如何结合Flyway处理不在序列中的分支的合并

    我刚刚遇到了以下情况 测试服务器当前正在运行 Flyway 版本 1 V1 每当有任何内容推送到测试服务器上时 测试服务器都会自动更新 包括 Flyway 脚本 develop branch 开发人员决定开始在分支上开发新功能feature
  • 使用flywaydb时如何对存储过程进行版本控制?

    我目前有一个使用 Microsoft SQL Server 后端的 Java Web 应用程序 数据库迁移当前由 sqlcmd 手动完成 它使用 r 命令来引用存储过程和视图的脚本文件 这样 每个存储过程都有自己的文件 proc somep
  • 使用 csv 文件进行 Flyway 特定迁移

    我们正在使用 Flyway 通过 sql 脚本在我们的测试环境中保持最新的许多数据库 并且它工作得很好 但我们还特别需要使用 csv 文件更新数据库 我知道 Flyway 提供了一些基于 Java 的迁移来处理更复杂的更新 但问题是这些 J
  • 如何测试飞行路线迁移?

    通常迁移脚本很简单 例如添加新列等 如果应用程序已部署 则一切正常 但有时需要测试一些复杂的逻辑 推荐的方法是什么 有一个单独的数据库用于测试 将其作为每个构建的一部分进行迁移 并针对它运行测试 您还可以根据需要添加额外的测试数据 包括用于
  • 禁用 Flyway 占位符验证

    因此 由于某些要求而升级我的 Flyway 版本后 我了解到 Flyway core 2 2 引入了对 Flyway 占位符的一些验证 现在 占位符语法的约定在大多数库中都是统一的 name 在我们的迁移脚本中 我们在名为stretchyS
  • Flyway并发迁移

    我们有许多项目在许多服务器上运行 并查找一个数据库 我们正在考虑为每个项目设置 Flyway 来控制我们的数据库结构 但是我们担心并发迁移问题 如果某些项目在同一时间重新部署 当然 我们总是关心sql语法中的 如果存在 的事情 当同一数据表
  • 在 Flyway 脚本中安全地重命名 MySQL 表名

    我将通过 Flyway SQL 脚本重命名 MySQL 8 0 表 RENAME TABLE aaa TO bbb 它应该在 env 上运行很多次 但这样的脚本不是幂等的 尝试第二次运行它时我发现了一个错误 SQL State 42S01
  • 是否可以使用flyway管理oracle数据库?

    我真的很难理解如何使用 Flyway 来管理 Oracle 数据库 相关数据库有 3 个模式 如果我在我的 gradle 文件中的 Flyway 插件定义中规定了 3 个模式 我如何管理用户本身的创建以及他们使用的表空间 任何提示或建议将非
  • Flyway 在空模式上发现非空模式

    我正在尝试实施数据库迁移Flyway 4 2 0 Oracle 11g 我有这个空架构 当我尝试迁移时 Flyway 说 造成原因 org flywaydb core api FlywayException 发现非空 模式 PASHA 没有
  • 持续交付中的生产数据迁移模式

    持续交付中生产中的关系数据库 和模式 迁移模式是什么 在许多传统开发中 DBA 从当前发布周期中创建的许多较小脚本中安排一个大型迁移脚本 但在 CD 中 开发人员可能希望立即将更改推送到生产中 而不是等待与其他脚本一起编译它们 我知道 Ra
  • Heroku DATABASE_URL 作为 Maven 的 JDBC Url

    我在 Heroku 上的应用程序使用 DATABASE URL 使用 Java 将其解析为带有用户名和密码的 JDBC URL 很简单 那里没有问题 但是 我有一个带有 Maven 插件的 JOOQ 生成器和 Flyway 迁移器 但我不知
  • postgres 的 Flyway 迁移挂起 CREATE INDEX CONCURRENTLY

    我正在尝试对 Postgres 9 2 数据库运行 CREATE INDEX CONCURRENTLY 命令 我实现了一个 MigrationResolver 如问题所示655 https github com flyway flyway
  • 如何在flyway创建的postgresql jdbc连接上设置时区?

    我有一个 postgresql 数据库 我使用 Flyway 将脚本部署到该数据库 我使用 Maven Flyway 插件启动针对目标数据库的数据库构建 在该构建中 我有一些脚本可以执行以下操作 create table my table
  • 如何使用flyway将数据从一个DB迁移到另一个DB?

    我在不同的服务器上有两个 postgreSql DB 比如说 A 和 B 我可以使用 Flyway 一些如何将所有数据从 DB A 复制到新设置且为空的 B 如果有人指出我正确的方向和工具 这将很有帮助 要求是通过某种工具自动化将数据从一个
  • 自动生成Flyway的迁移SQL

    当通过 Java 代码添加新模型 字段等时 JPA Hibernate 的自动模式生成是否可以生成新的 Flyway 迁移 捕获自动生成的 SQL 并将其直接保存到新的 Flyway 迁移中 以供审查 编辑 提交到项目存储库 这将很有用 预
  • 如何使用Flyway插入CLOB/BLOB数据?

    我的要求是使用 Flyway 工具通过插入脚本插入 CLOB BLOB 数据 我无法找到任何东西来实现这一目标 所以有人可以指导我如何实现这一目标吗 我们需要插入 XML 文件 作为 blob 因此 让脚本以两种方式在 Oracle Fly

随机推荐

  • 检测视频文件何时真正写入?

    cwac camera 库具有在保存照片之前调用的事件挂钩 Override public void saveImage PictureTransaction xact byte image 我是否只是忽略了这一点 或者是否没有接收器告诉我
  • 为什么 GetWindowThreadProcessId 有时返回 0?

    我使用远程调用在目标地址空间中注入 NET SpyLib 我需要向该窗口的线程发送一条消息 该线程通过以下方式创建了该远程进程GetWindowThreadProcessId 我正在 Windows 7 上工作 不幸的是它大多数时候返回 0
  • Vue-cli 版本 3 BETA webpack 配置

    我正在尝试学习和测试即将推出的 vuejs vue cli beta 3 0 版本 这将是朝着最简单的 webpack 配置迈出的一大步 与此同时 例子很少 作为测试 我尝试从 vue cli v2 webpack dev conf js
  • iPhone Safari 上的 HTML5 - localStorage 存储的数据并不总是持久。为什么?

    我使用 HTML5 的 localStorage 编写了一个简单的 iPhone Web 应用程序 在 2G 设备上的测试表明 尽管会记住打开的 Safari 窗口 但在 Safari 进程被终止后 使用 localStorage 存储的数
  • 检查整数是否太大

    我正在开发一个交换系统 用户正在设置交换的价格和金额 我想确保交换不大于整数最大值 但我遇到了问题 当兑换金额设置为9或更多时 即使我有检查以确保该数字不大于最大值 但它不起作用 我做了一些调试 当将金额设置为 9 而价格为 2 147 4
  • IIS 7.5 无法打开处理程序映射?

    我需要更新 IIS 7 5 上的处理程序映射 以允许将没有扩展名的 URL 路由到应用程序 该应用程序最初是用 ASP NET 2 0 编写的 但后来升级到 ASP NET 3 5 我不知道这是否相关 但我之前更新其他 net 3 5 应用
  • XGBoost 弃用警告 - Sklearn

    我正在使用 XGBoost 中的 XGBClassifier 我收到以下弃用警告 有什么解决方案可以消除这个警告吗 home carnd anaconda3 envs dl lib python3 5 site packages sklea
  • 无法在 ASP.NET 中转换 System.Web.UI.WebControls.GridView 类型的对象

    我编写了一个方法 当单击删除按钮时从我的 asp net Gridview 中删除行 另一种方法在单击编辑按钮时删除行 编辑和删除按钮都是内置 gridview 控件的一部分 但是 当我按下这些按钮 编辑 删除 时 会引发异常 无法将 Sy
  • 针对网站的 http 客户端 head 方法返回 503,但该网站运行良好

    我们使用以下代码从客户端应用程序与我们的网站进行对话 由于某种原因 我们总是得到 503 的状态代码 但是当我们从浏览器手动加载网站时 它只会加载 find 代码可能有什么问题吗 或者服务器端是否有任何特殊设置可能导致此问题 the hea
  • 存储过程 EF 和 NET CORE

    我正在构建一个 WEB API 以在 net core 中生成 JSON 对象 问题是数据集是在 SQL 存储过程 使用动态 SQL 中生成的 我不知道返回的对象的类型 因此我可以将其映射到具体模型 因为输出列根据参数而变化 有谁知道如何在
  • Android - 如果第一次加载 Activity,则阻止 onResume() 函数(不使用 SharedPreferences)

    在我当前的应用程序中 当我第一次加载 Activity 时 会触发 onResume 函数 我调查了活动生命周期 http developer android com reference android app Activity html
  • 如何在NiFi中使用计数器的值

    在 NiFi 1 3 0 中 我创建了一个流程来分割 JSON 文件并使用名称更新计数器filenamecounter这样我就可以将每个拆分保存为不同的文件名 当我查看 NiFi 计数器窗格时 我看到计数器值已更新 但我怎样才能获取这个值呢
  • 如何在 Safari 中应用隐藏/远程源映射?

    我正在尝试调试我的 React 应用程序中的一个问题 该问题仅在 iOS 生产中发生 我想利用隐藏的源映射 这样我就可以在 Safari 中调试应用程序的缩小资源 而无需公开发布注释的源代码 hidden source map 与 sour
  • .Net 4.0 HttpClient 使用情况?

    我在 Net 4 0 中并尝试使用 HttpClient 我看到一些文章说4 0不再支持它 但你仍然可以使用它 我已经包括了System Net Http 程序集 但它不允许我向HttpClient 知道我该如何解决这个问题吗 我已经将发生
  • 编译时 -pthread 和 -lpthread 之间的区别

    有什么区别gcc pthread and gcc lpthread编译多线程程序时使用哪个 pthread告诉编译器链接 pthread 库并配置线程的编译 例如 下面显示了当 pthread选项在我的 Ubuntu 机器上安装的 GCC
  • 如何修复 Java 中 mediawiki-api 上的“readapidenied”错误

    我正在开发一个使用 mediawiki API 的项目 但出现以下错误 错误代码 readapidenied 信息 您需要读取权限才能使用此模块 INFOS 无法通过 API 检索 Mediawiki 版本 将假定 Mediawiki 1
  • Force GraphViz 节点之间的力距离

    我将 GraphViz 与以下点文件一起使用 digraph G rankdir LR subgraph commits 5c071a6b2c gt 968bda3251 gt 9754d40473 gt 9e59700d33 gt 2a3
  • 使用 spring data mongo 更新插入 Mongo 文档

    我有一个班级 Document public class MyDocument Id private String id private String title private String description private Str
  • Android 应用程序的加密受 EAR 监管

    我正在开发 Android 应用程序 作为一个完全次要的功能 它将允许用户加密一些字符串 我知道 AES 256 位 比 DES 56 位 更推荐使用 但是 如果我使用 AES 256 并在 Android Market 中发布我的应用程序
  • 最佳实践:使用flyway迁移脚本后如何修改

    我正在寻找以下案例的建议 我在生产环境中设置了 Flyway 迁移脚本 每次部署时 数据库都会迁移到当前版本 我已经创建了几个已应用于生产数据库的迁移脚本 最近我升级了我的 MySQL 开发工具 现在包括有关使用已弃用函数的警告和其他警告