时,会首先查看databasechangelog表,如果已经执行过,则会跳过,除非changeSet的runAlways属性为true, 如果没有执行过,则执行并记录changelog日志
changelog...中的一个changeSet对应一个事务,在changeSet执行完后commit, 如果出现错误就会rollback
常用标签及命令
changeSet标签
标签的主要属性有...:
runAlways: 即使执行过,仍然每次都要执行
由于databasechangelog中还记录了changeSet的MD5校验值MD5SUM, 如果changeSet的id和name没变,而内容变化....则MD5值变化,这样即使runAlways的值为true, 也会导致执行失败报错....描述
baseline-description / 对执行迁移时基准版本的描述
baseline-on-migrate false 当迁移发现目标schema非空,而且带有没有元数据的表时,是否自动执行基准迁移