数据库版本管理工具Flyway——基础篇

Posted 沧海一滴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库版本管理工具Flyway——基础篇相关的知识,希望对你有一定的参考价值。

 

Flyway 默认规约 SQL 脚本文件默认位置是项目的源文件夹下的db/migration 目录。
Java 代码默认位于db.migration 包。
SQL 脚本文件及Java 代码类名必须遵循以下命名规则:V[_][__description] 。
版本号的数字间以小数点(. )或下划线(_ )分隔开,版本号与描述间以连续的两个下划线(__ )分隔开。
如V1_1_0__Update.sql 。
Java 类名规约不允许存在小数点,所以Java 类名中版本号的数字间只能以下划线进行分隔。

<plugin>  
       <groupId>com.googlecode.flyway</groupId>  
       <artifactId>flyway-maven-plugin</artifactId>  
       <version>1.7</version>  
       <dependencies>  
              <dependency>  
                     <groupId>mysql</groupId>  
                     <artifactId>mysql-connector-java</artifactId>  
                     <version>${mysql.connector.version}</version>  
              </dependency>  
       </dependencies>  
       <configuration>  
              <driver>com.mysql.jdbc.Driver</driver>  
              <url>jdbc:mysql://localhost/flywaydemo?useUnicode=true&amp;characterEncoding=utf-8</url>  
              <user>root</user>  
              <password></password>  
   
              <!-- 设置接受flyway进行版本管理的数据库,多个数据库以逗号分隔 -->  
              <schemas>flywaydemo</schemas>  
              <!-- 设置存放flyway metadata数据的表名 -->  
              <table>schema_version</table>  
              <!-- 设置flyway扫描sql升级脚本、java升级脚本的目录路径或包路径 -->  
              <locations>  
                     <location>flyway/migrations</location>  
                     <location>com.kedacom.flywaydemo.migrations</location>  
              </locations>  
              <!-- 设置sql脚本文件的编码 -->  
              <encoding>UTF-8</encoding>  
              <!-- 设置执行migrate操作之前的validation行为 -->  
              <validationMode>ALL</validationMode>  
              <!-- 设置当validation失败时的系统行为 -->  
              <validationErrorMode>FAIL</validationErrorMode>  
       </configuration>  
</plugin>  

 

上面的插件配置包含了几方面的配置信息:

  • 声明插件
  • 声明数据库驱动的依赖包
  • Flyway 配置——数据库连接配置
  • Flyway 配置——Flyway 参数与行为配置

执行Maven 命令进行Flyway 操作(下面列出几种常用的操作)

  • mvn flyway:init (初始化Flyway metadata )
  • mvn flyway:migrate (执行Flyway 升级操作)
  • mvn flyway:validate (校验Flyway 数据正确性)

 

http://blog.csdn.net/nydia_lvhq/article/details/51362649

 

以上是关于数据库版本管理工具Flyway——基础篇的主要内容,如果未能解决你的问题,请参考以下文章

Java基础学习总结(183)—— Flyway 在项目中迁移数据实践

Flyway详解以及Springboot集成Flyway, 数据库脚本版本管理

程序开发数据库版本控制必备 - Flyway

数据库版本控制Flyway

Team Foundation Server (TFS)集成Flyway,实现数据库的版本管理

Flyway详解以及Springboot集成Flyway(转)