千家信息网

SpringBoot如何整合liquibase及liquibase生成初始化脚本

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍SpringBoot如何整合liquibase及liquibase生成初始化脚本,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一. SpringBoot集成li
千家信息网最后更新 2026年11月02日SpringBoot如何整合liquibase及liquibase生成初始化脚本

这篇文章主要介绍SpringBoot如何整合liquibase及liquibase生成初始化脚本,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一. SpringBoot集成liquibase

项目集成liquibase作用

  1. 对数据库表字段进行版本控制

  2. 项目初始化部署时初始化数据库表和数据

①.导入pom依赖

    org.liquibase    liquibase-core

②.配置application.yml文件,指定master.xml

spring:  liquibase:    change-log: classpath:liquibase/master.xml #指定master.xml文件的位置

不同spring版本配置方式不一样
具体看源码LiquibaseProperties中配置

③.新建master.xml文件用于中指定数据库初始化脚本的位置

        

④.将数据库表初始脚本init_table.xml和数据初始脚本init_data.xml放到项目目录下

脚本可以通过手写的方式或者通过liquibase自动生成;

启动项目如果第一次运行则会在数据库中创建表和数据
后面如果脚本中有新增表或者字段启动项目的时候也会自动创建生成

二. liquibase生成数据库表和数据的初始化脚本

liquibase有两种方式生成初始化脚本

方法一:在官网下载liquibase压缩包,使用原生的命令行指令来生成

下载liquibase压缩包,解压,将mysql连接jar包复制一份到此目录下

进入解压目录执行如下执行

根据数据库生成表结构文件

./liquibase --driver=com.mysql.cj.jdbc.Driver --classpath=mysql-connector-java-8.0.17.jar --changeLogFile=./init-data.xml --url="jdbc:mysql://192.168.0.162:3306/hello_world" --username=root --password=123456 --diffTypes=data generateChangeLog

根据数据库生成初始数据文件

./liquibase --driver=com.mysql.cj.jdbc.Driver --classpath=mysql-connector-java-8.0.17.jar --changeLogFile=./init-table.xml --url="jdbc:mysql://192.168.0.162:3306/hello_world" --username=root --password=123456 generateChangeLog
  • 数据库驱动取决于数据库

–driver=com.mysql.cj.jdbc.Driver

  • mysql连接

–classpath=mysql-connector-java-8.0.17.jar

  • 自定义生成的初始化脚本文件名

–changeLogFile=./init-data.xml

  • 数据库连接地址

–url="jdbc:mysql://192.168.0.162:3306/hello_world"

  • 数据库用户名密码

-username=root
–password=123456

  • 生成初始化表数据需要加上这个配置,生成表结构则不加

-diffTypes=data

方法二:使用Maven插件

        org.liquibase        liquibase-maven-plugin        3.4.2                        ${basedir}/src/main/resources/liquibase/change_log/changelog.xml                                ${basedir}/src/main/resources/liquibase/change_log/changelog.xml                                com.mysql.jdbc.Driver                jdbc:mysql://192.168.0.30:3306/school                qj                123456                                UTF-8                                true                                false                                tables, views, columns, indexs,foreignkeys, primarykeys, uniqueconstraints, data        

如果只是生成数据库表脚本,则将上面的diffTypes注释起来或者去掉里面的data
如果只是生成数据脚本,则只留下data
如果要把数据表脚本和数据脚本生成到一个文件则保留上面的difftypes所有内容

安装好maven插件后maven插件中可以看如下图的指令,点击即可生成脚本文件

生成脚本如下

                                                                                                                                                                                                                                                                                                                                                             

以上是"SpringBoot如何整合liquibase及liquibase生成初始化脚本"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

数据 生成 脚本 数据库 文件 项目 配置 内容 插件 方式 目录 整合 位置 只是 字段 指令 方法 版本 篇文章 结构 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 百单网互联网科技有限公司 广州淘业互联网络科技 广东猪兼强互联网科技有限公司 深圳九邦互联网科技有限公司 互联网科技金融 互联网的科技创新 西安互联网科技公司 赫美联合互联网科技 中正互联网科技招聘 广西拼得多互联网科技有限公司 青岛中康互联网医疗科技有限公司 央行互联网金融科技公司 昭通云南众福互联网科技有限公司 互联网5g黑科技有哪些 互联网科技产业特征 互联网公司黑科技创始人 深圳互联网科技的发展 互联网科技股为什么大涨 互联网科技数字货币 下一代互联网重大应用科技园 互联网科技有限公司 互联网科技保险 涨乐互联网科技 美国互联网科技 互联网科技论坛 互联网科技公司有哪些 滨湖区互联网智能科技产品供应 湖北码尼互联网科技有限公司电话 南平创想时代互联网科技有限公司 合肥互联网科技公司公章图片
0