一、從Liquibase官網入手
Liquibase是一個開源的數據庫版本管理工具,可以跟蹤數據庫的變化並同步到其他環境中。我們可以從Liquibase的官網獲取最新的版本,並查看相關文檔。下載Liquibase的zip包,解壓縮後可以看到bin文件夾、conf文件夾等,其中liquibase.bat是Windows系統的入口,liquibase是Linux系統的入口。
二、Liquibase引入腳本
利用Liquibase引入腳本,即可將數據庫表格的定義文件導入數據庫。在安裝好Liquibase之後,可以使用命令行工具來執行一些基本的任務,從而能夠使用Liquibase的全部功能。通過命令行定位到項目的目錄,進行以下操作即可:
liquibase --driver=com.mysql.jdbc.Driver \ --classpath=mysql-connector-java-5.1.27.jar \ --changeLogFile=db.changelog.xml \ --url="jdbc:mysql://localhost/mydatabase" \ --username=myuser \ --password=mypassword \ update
其中,我們需要在類路徑中添加驅動程序並指定具體的變更日誌文件(db.changelog.xml),以及要更改的數據庫的url、用戶名及密碼。
三、Liquibase是什麼
Liquibase是一個用Java編寫的開源跨平台的數據變更管理庫。它提供了靈活的標記式數據變更管理和持久化能力。關於Liquibase的具體機制,我們先來介紹一下數據變更管理,即數據庫的版本控制。相當於JAVA中的git,SVN等工具。而針對數據庫更改的管理老早以前的做法是建一個數據庫變更文檔,並手動更新變更日誌,整個過程非常繁瑣,易錯。
四、Liquibase的使用
Liquibase採用基於XML文件的方式來管理和實現數據庫變更操作,使用Liquibase就不需要手工管理數據庫變更,以及管理不同環境數據庫的內容。可以採用liqiubase自動遷移的方式,通過觸發程序連接數據庫並執行變更。
五、Liquibase怎麼讀
Liquibase可以通用於多種數據庫,支持JDBC發送SQL語句到數據庫,通過適配器實現特定數據庫的一些操作,適配器可以在運行時通過LiquibaseVisco配置到Liquibase中,並為不同的操作提供對應的實現。在使用時需要先添加數據庫驅動,指定liquibase的changelog,並設置數據庫訪問邊界,如用戶名和密碼等參數。
六、Liquibase和jooq
在Liquibase和jooq結合使用可以更好的利用到jooq所提供的sql語言優點,增強代碼的可讀性和可維護性。對於複雜的查詢統計,可以使用jooq,同時又保證了便攜性和可擴展性。Liquibase和jooq在不同場景下均有各自優劣,所以使用時應結合實際情況進行選擇.
七、Liquibase Flyway
Liquibase Flyway是另一個數據遷移工具,它類似於Liquibase,但它不支持多種數據庫和某些高級功能。與Liquibase的POM不同,Flyway需要在自己的pom.xml文件中使用Maven啟動Flyway插件。Flyway比Liquibase更注重追求簡單性,但缺乏Liquibase的專業性。因此,當我們處於需要專業能力的時候,就應該選擇Liquibase.
八、Liquibase changelog
changelog是由Liquibase控制的所有實體的定義所組成的XML文件,Liquibase通過檢測changelog來知道如何更新數據庫。changelog是Liquibase中最重要的部分之一,它包含了所有的變更集合和改變。對於每個數據庫,Liquibase需要一個唯一的changelog實例。
九、Flowable Liquibase
Liquibase在Flowable中的應用場景主要是:多個版本流程的管理,在之前的流程中,使用的全部都是Flowable中默認的方式變更和版本統計,而在Liquibase的場景中,可以在一個changelog.xml文件中管理類似關係數據庫管理方式的表和列,他可以讓我們更好的修改表結構,提高了我們研發對於數據表結構修改和遷移的效率。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/300459.html