2017-11-27 15 views
0

2つのchangeLogファイル(changeLog-1.0.1.xml、changeLog-2.0.1.xml)があります。 各changeLogファイルには2つの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> 

私は、コマンドラインから2番目のChangeLogファイル(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 
関連する問題