В качестве дальнейшего ответа на то, что Натан Воксланд сказал о LiquiBase , ниже приведен пример выполнения миграции под Windows для базы данных mySql:
Поместите соединитель mysql в папку lib в дистрибутиве liquibase, например.
Создайте файл свойств liquibase.properties в корне дистрибутива liquibase и вставьте следующие повторяющиеся строки:
driver: com.mysql.jdbc.Driver
classpath: lib\\mysql-connector-java-5.1.30.jar
url: jdbc:mysql://localhost:3306/OLDdatabase
username: root
password: pwd
Создание или получение обновленной базы данных под другим именем, например NEWdatabase .
Теперь вы извлечете различия в файле Migration.xml с помощью следующей командной строки:
liquibase diffChangeLog --referenceUrl="jdbc:mysql://localhost:3306/NEWdatabase"
--referenceUsername=root --referencePassword=pwd > C:\Users\ME\Desktop\Migration.xml
Наконец, запустите обновление, используя только что сгенерированный Migration.xml файл:
java -jar liquibase.jar --changeLogFile="C:\Users\ME\Desktop\Migration.xml" update
Примечание: все эти командные строки должны выполняться из домашнего каталога liquibase, в котором находятся liquibase.bat / .sh и liquibase.jar.