2011-06-03 92 views
4

我在Linux上使用Liquibase,有沒有人知道如何從Linux提示符一步一步地運行datbasechangelog.xml文件?數據庫更新日誌背後的想法及其工作原理是什麼?如何在Linux系統上運行liquibase

回答

3

對於我們的項目,我們已經設置了ant任務來執行此操作。因此,舉例來說,如果你想運行遷移,螞蟻文件可能如下所示:

螞蟻migrations.xml

<project name="Migrations" basedir="." default="update-database"> 
<property file="./liquibasetasks.properties" /> 

<path id="master-classpath" description="Master classpath"> 
    <fileset dir="..\lib"> 
     <include name="*.jar" /> 
    </fileset> 
</path> 

<target name="update-database"> 
    <fail unless="db.changelog.file">db.changelog.file not set</fail> 
    <fail unless="database.url">database.url not set</fail> 

    <fail unless="database.username">database.username not set</fail> 
    <fail unless="database.password">database.password not set</fail> 

    <taskdef resource="liquibasetasks.properties"> 
     <classpath refid="master-classpath"/>  
    </taskdef> 

    <updateDatabase 
      changeLogFile="${db.changelog.file}" 
      driver="${database.driver}" 
      url="${database.url}" 
      username="${database.username}" 
      password="${database.password}" 
      promptOnNonLocalDatabase="${prompt.user.if.not.local.database}" 
      dropFirst="false" 
      classpathref="master-classpath" 
    /> 

</target></project> 

確保您liquibase jar文件(S)的在classpath元素中引用。

屬性文件包含特定於環境中的引用:

liquibasetasks.properties

db.changelog.file=YOUR_MIGRATION_FILE.xml 

################################# 
## DB Settings 
################################# 
database.driver= 
database.username= 
database.password= 
database.url= 

好了,現在我們有螞蟻任務設置和配置。與所有的拯救,你應該能夠通過在命令提示符處鍵入以下運行遷移:

linux>ant -f ant-migrations.xml update-database 

希望有所幫助!

相關問題