在spring-boot项目中使用liquibase-maven插件。
我添加了以下变更集:
<changeSet author="mrx" id="1642181924202-55">
<addColumn tableName="users" >
<column name="email"
type="varchar(255)">
</column>
</addColumn>
</changeSet>
液化酶性质:
url=jdbc:mysql://db:3306/mydb
username=root
classpath=mysql-connector-java-8.0.12.jar
password=test
ChangeLogFile=liquibaseChangeLog.xml
driver=com.mysql.cj.jdbc.Driver
outputChangeLogFile=src/main/resources/liquibaseChangeLog.xml
diffExcludeObjects=table:ACT_.*
logLevel=finest
diffTypes=data,tables,views,columns,indexes,foreignkeys,primarykeys,uniqueconstraints
在应用程序中。弹簧靴的名称:
liquibase:
change-log: classpath:liquibaseChangeLog.xml
然后我从intellij运行maven liquibase插件操作"更新";但是该表没有被更改,并且更改日志不包含-55 id,因此不使用它。
变更日志以前是从一个现有的数据库中生成的,这很有效,当我删除整个数据库时,liquibase会重新创建它。只能手动在这里添加一个简单的列。
我怎样才能让它发挥作用?我的变更集缺少一些信息吗?(我删除了参数schema和catalog,看起来我不需要它们,也不知道该填写什么,id和上次生成的一样+1(变更集实际上添加了一个像这样的简单列。
好的,我一直在运行liquibase更新,但它不起作用,但在我简单地构建项目并启动spring-boot应用程序后,更改日志被正确应用。:/