liquibase初次使用

liquibase使用步骤:

1,引入依赖


<dependency>
    <groupId>org.liquibase</groupId>
    <artifactId>liquibase-core</artifactId>
    <version>3.8.9</version>
</dependency>

2,配置master.xml

存放路径:src/main/resources/liquibase/master.xml

<?xml version="1.0" encoding="utf-8"?>
<databaseChangeLog
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
        xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
	<!--执行的目录顺序设置-->
    <includeAll path="liquibase/release1.0.0/"/>
    <includeAll path="liquibase/release2.2.1/"/>

</databaseChangeLog>

3,写执行sql

存放路径:liquibase/release1.0.0/sql文件名.xml

<?xml version="1.0" encoding="utf-8"?>
<databaseChangeLog
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
        xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
         http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.8.xsd">
   <changeSet id="0001" author="zhangsan" labels="用户信息表">
        <sql>
         	drop table if exists user_info ;
        </sql>
    </changeSet>
</databaseChangeLog>

注意:
- ChangeSet id使用四位数:0001,必须填写author:xxx,尽量填写label描述。谨慎使用runOnChange,runAlways等策略
- 已经执行过的ChangeSet严禁修改
- 使用时,禁止包含schema名称,禁止使用存储过程
- 所有表,列要加remarks进行注释
- 不要随便升级项目liquibase版本,特别是大版本升级。不同版本ChangeSet MD5SUM的算法不一样。

4,编写配置类,

加载master.xml,并通过@Bean 注入spring中

@Configuration
@ConditionalOnClass(DataSource.class)
public class LiquibaseConfig {

    private final DataSource dataSource;

    public LiquibaseConfig(DataSource dataSource) {
        this.dataSource = dataSource;
    }

    @Bean
    SpringLiquibase liquibase() {
        SpringLiquibase liquibase = new SpringLiquibase();
        liquibase.setDataSource(dataSource);
        liquibase.setChangeLog("classpath:liquibase/master.xml");
        liquibase.setShouldRun(true);
        return liquibase;
    }
}

tips:

1,liquibase是按照顺序执行的,

2,含sql的xml尽量不要修改,不然下次启动会报错(因为会进行对sql文件校验)

5,详细用法:

英文文档 https://www.liquibase.org/get-started/quickstart

中文文档https://blog.csdn.net/u012934325/article/details/100652805

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值