• 首页
  • 邻居
  • 关于
  • 归档
  • 搜索
  • 夜间模式
    ©2020-2026  我的学习笔记 Theme by OneBlog

    我的学习笔记博客

    搜索
    标签
    # 随笔 # Java # 教程 # openwrt # Mysql # SQL # 爬虫 # post # Js调优 # MAVEN
  • 首页>
  • Java>
  • 正文
  • 项目spring cloud整合flyway

    2024年07月08日 1.2 k 阅读 0 评论 1420 字

    公司项目用的微服务架构

    苦于每次需要手动改数据库表

    然后我在想能不能集成一个数据库版本管理工具

    调查选择flyway

    因为项目是分布式的,每个服务有一个数据库

    然后我的做法是创建一个共同的子工程来统一管理sql文件

    然后再resources目录创建每个工程对应的文件夹


    再总的application.yml写入

    #前缀: V 代表版本变迁(Versioned Migrations), U 代表撤销变迁(Undo Migrations), R 代表可重复变迁(Repeatable Migrations)
    #版本号: 唯一的版本号,比如V1.0.1
    #分隔符: __ (两个下划线)
    #描述信息: 描述信息
    #后缀: .sql
      flyway:
        # 是否开启flyway
        enabled: true
        encoding: utf-8
        # 是否禁用数据库清理
        clean-disabled: true
        # 若连接的数据库非空库,是否初始化
        # 当迁移时发现目标schema非空,而且带有没有元数据的表时,是否自动执行基准迁移,默认false.
        baseline-on-migrate: true
        # sql脚本文件名前缀,默认大写V
        sql-migration-prefix: V
        # sql脚本文件名称的分隔符,默认2个下划线__
        sql-migration-separator: __
        # 迁移sql脚本文件名称的后缀
        sql-migration-suffixes: .sql
        # metadata 版本控制信息表 默认 flyway_schema_history
        table: flyway_schema_history
        # 指定 baseline 的版本号,默认值为 1, 低于该版本号的 SQL 文件, migrate 时会被忽略
        baseline-version: 1

    然后再每个服务的配置文件中写入

      flyway:
        # 默认存放sql脚本目录,默认为db/migration
        locations: classpath:db/migration/im

    指定每个工程sql位置

    即可。。。。

    sql文件的命名规则如下:

    前缀: V 代表版本变迁(Versioned Migrations), U 代表撤销变迁(Undo Migrations), R 代表可重复变迁(Repeatable Migrations)

    版本号: 唯一的版本号,比如V1.0.1

    分隔符: __ (两个下划线)

    描述信息: 描述信息

    后缀: .sql

    V1.0.0__create_user.sql
    本文著作权归作者 [ admin ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。
    取消回复

    发表留言
    回复

    首页邻居关于归档
    Copyright©2020-2026  All Rights Reserved.  Load:0.016 s
    京ICP备18019712号
    Theme by OneBlog V3.6.5
    夜间模式

    开源不易,请尊重作者版权,保留基本的版权信息。