V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zhangjiashu2023
V2EX  ›  程序员

个人 SpringBoot 项目数据库怎么升级迁移

  •  
  •   zhangjiashu2023 · 78 天前 · 1944 次点击
    这是一个创建于 78 天前的主题,其中的信息可能已经有所发展或是发生改变。

    自己写的项目,由于升级改动了一些 mysql 表的结构。添加了一些字段也删除了一些字段。这种如果上线的话,怎么去进行数据迁移,有没有什么迁移工具推荐

    11 条回复    2024-10-28 11:30:45 +08:00
    Ayanokouji
        1
    Ayanokouji  
       78 天前
    一般都是手工处理
    1.上线前增加字段
    2.上线
    3.上线后删除字段
    jaylee4869
        2
    jaylee4869  
       78 天前   ❤️ 1
    一般都是自动处理
    1. 上线前写好 flyway migration
    2. 上线
    3. 上线后自动部署迁移脚本
    Configuration
        3
    Configuration  
       78 天前
    flyway
    zhangjiashu2023
        4
    zhangjiashu2023  
    OP
       78 天前
    @Configuration 好的,学习学习
    doggg
        5
    doggg  
       78 天前
    思路打开一点,其实没有必要限定在 Java 的生态里。甚至你还可以用 python 的 alembic 来做。这部分无非就是部署后怎么调用脚本来升级而已。某些 API Gateway 基础软件里面甚至会自己实现 migration 。
    huzhizhao
        6
    huzhizhao  
       77 天前
    我觉得手工和再次复核就好了
    ByteCat
        7
    ByteCat  
       77 天前
    用 Java 的话 flyway ,其实楼上说的也没错,你随便找个数据库管理工具就能迁移了,比如 Navicat
    shixuedela
        9
    shixuedela  
       77 天前
    之前 Navicat 有一个库对比,生成相应的 sql ,上线之前运行一下,运行前备份当前库数据和检查 sql 语句。
    puzzle9
        10
    puzzle9  
       69 天前
    `laravel` 用旧了 切换到其他项目 感觉数据库迁移 好复杂
    bkchan
        11
    bkchan  
       26 天前
    @puzzle9 哈哈是的感觉 laravel 的迁移数据库好方便
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2871 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 07:56 · PVG 15:56 · LAX 23:56 · JFK 02:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.