2017-11-27 8 views
0

두 개의 changeLog 파일 (changeLog-1.0.1.xml, changeLog-2.0.1.xml)이 있습니다. 각 changeLog 파일에는 두 개의 changeSet (changeSet-1, changeSet-1)이 포함되어 있습니다. 둘 다 앱을 배포 할 때 실행됩니다.Liquibase 명령 줄을 사용하여 특정 변경 집합으로 롤백하는 방법

이 내가 변경 집합을 지정하는 방법입니다

<changeSet id="changeSet-1" author="someUser" labels="labelOne"> 
    <createTable tableName="testTable" schemaName="public"> 
     <column autoIncrement="true" name="id" type="BIGINT"> 
      <constraints primaryKey="true"/> 
     </column> 
    </createTable> 
    <rollback> 
     <dropTable tableName="testTable"/> 
    </rollback> 
</changeSet> 

내가 명령 줄에서 두 번째 변경 로그 파일 (changeLog2.xml)을 롤백합니다.

많은 방법을 시도했지만 성공하지 못했습니다.

업데이 트를 파일 변경 로그와 같은 디렉토리에있는 경우

java -jar C:\..\.m2\repository\org\liquibase\liquibase-core\3.5.3\liquibase-core-3.5.3.jar update rollback changeSet-1 --changeLogFile="changeLog-1.0.1.xml" 

: 나는 성공적으로

java -jar C:\Users\someUser\.m2\repository\org\liquibase\liquibase-core\3.5.3\liquibase-core-3.5.3.jar 
--changeLogFile=changeLog.xml 
--labels=labelOne 
--url=jdbc:postgresql://localhost:5432/app2db 
--classpath=C:/postgresql-42.1.4.jar 
--username=app2user 
--password=password 
update 

및 롤백

java -jar C:\Users\someUser\.m2\repository\org\liquibase\liquibase-core\3.5.3\liquibase-core-3.5.3.jar 
--changeLogFile=changeLog.xml 
--labels=labelOne 
--url=jdbc:postgresql://localhost:5432/app2db 
--classpath=C:/postgresql-42.1.4.jar 
--username=app2user 
--password=password 
rollback 

호출에 대한 명령 줄에서 업데이 트를 호출하는 관리 충돌로

Unexpected error running Liquibase: rollback requires a rollback tag 
+1

에 롤백을 먼저 태그를 만들 수 있었다 ([이쪽을 봐] http://www.liquibase.org/documentation/rollback.html). – bilak

답변

0

나는

java -jar C:\path\.m2\repository\org\liquibase\liquibase-core\3.5.3\liquibase-core-3.5.3.jar 
--changeLogFile=changeLog.xml 
--url=jdbc:postgresql://localhost:5432/app2db 
--classpath=C:/postgresql-42.1.4.jar 
--username=app2user 
--password=password 
tag exampletag 

다음 또한 날짜 또는 변경 집합의 수에 의해 롤백 할 수있는 특정 태그

java -jar C:\path\.m2\repository\org\liquibase\liquibase-core\3.5.3\liquibase-core-3.5.3.jar 
--changeLogFile=changeLog.xml 
--labels=labelOne 
--url=jdbc:postgresql://localhost:5432/app2db 
--classpath=C:/postgresql-42.1.4.jar 
--username=app2user 
--password=password 
rollback exampletag