liquibase Installment and use

1.1.1 Windows安装

1)下载

首先到oracle官网(http://www.oracle.com/technetwork/java/javase/downloads/index.html)下载最新版本的JDK。

2)安装

安装完成,假设安装目录是:C:\Program Files\Java\jdk1.7.0_25。

3)配置环境变量

选择我的电脑属性---高级---环境变量(或者使用window+Pause Break组合键);

然后在系统变量中新建:

a) 变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0_25

b) 系统变量中有一个Path变量,编辑此变量,在其前面加%JAVA_HOME%\bin;(注意分号)

c) 编辑系统变量中Classpath变量 在其前面加上 .;%JAVA_HOME%\bin;(注意在路径前加上点号代表当前路径)。

4)完成

如果安装好了,点击开始---运行---cmd 运行java和javac命令会出现帮助文档。

1.2 Liquibase的安装

1.2.1 下载

官网下载地址:http://www.liquibase.org/download/index.html

1.2.2 安装

解压缩下载的liquibase.zip,本文测试选择的是最新版本的,也就是liquibase-3.0.2版本,解压后的javadoc文件目录可以手工删除掉。假设安装目录是F:\liquibase。

配置环境变量,添加LIQUIBASE_HOME,值为F:\liquibase。添加到 Path变量,编辑此变量,在其前面加%LIQUIBASE_HOME%;

1.3配置

还需要在liquibase\lib文件夹添加mysql-connector-java-5.1.10-bin.jar

1.4使用方法(Mysql)

在CMD中运行如下:

注释:

Classpath 是上述1.3mysql-connector-java-5.1.10-bin.jar存放的物理路径。

changeLogFile是你要修改的数据库所写的XML存放的物理路径。

url是数据库的存放的电脑的IP/数据库名

1.4.2changeLogFile内容编写

<?xml version="1.0" encoding="UTF-8"?>

<databaseChangeLog

xmlns="http://www.liquibase.org/xml/ns/dbchangelog"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog

http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">

<changeSet id="1" author="bob">

<createTable tableName="department">

<column name="id" type="int">

<constraints primaryKey="true" nullable="false"/>

</column>

<column name="name" type="varchar(50)">

<constraints nullable="false"/>

</column>

<column name="active" type="boolean" defaultValueBoolean="true"/>

</createTable>

</changeSet>

</databaseChangeLog>

1.4.3 有rollback的changelog

<?xml version="1.0" encoding="UTF-8"?>

<databaseChangeLog

xmlns="http://www.liquibase.org/xml/ns/dbchangelog"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog

http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">

<changeSet id="15" author="nvoxland">

<sql>insert into department (id,name,active) value (7,"test",0)</sql>

<rollback>

<sql>delete from department where id=7</sql>

</rollback>

</changeSet>

</databaseChangeLog>

1.4.4 调用SQL

<changeSet id="6" author="joe">

<sqlFile path="insert-distributor-data.sql"/>

</changeSet>

1.5 rollback的使用

注释:

15:是上述描绘的changeSet id="15"

时间: 2024-08-04 17:42:06

liquibase Installment and use的相关文章

liquibase判断mysql表字段是否存在

背景:今天在部署sql代码的时候,发现以前一直使用的判断字段存在的方式不起作用了,如下: <preConditions onFail="MARK_RAN" >        <not>            <columnExists schemaName="${schema.name}" tableName="prize" columnName="reward_service_category"

[心得] 如何利用liquibase進行資料庫版本控制 - 基礎觀念

前言 - 會寫這篇除了是要記錄一下使用的過程之外,也是發現到網路上找來的教學幾乎都是跟其它環境做結合 比較沒有單純利用command進行的流程.也沒有整體觀念的介紹,所以將我所理解的整理分享給大家. 因我對於Git版本控制比較熟悉,這當中會借用一點Git的觀念來做解釋 :) liquibase - 介紹與觀念 liquibase是一套opensource的版本控制系統,其背後其實就是透過設定不同版本的changeLogFile,在執行時執行對應的SQL語法,來達到所謂的版本控制. 而在目前最新版

liquibase之快速入门

第一步: 创建一个Changelog File: 这个database  Changelog file列举了数据库中所有的改变情况,该文件是以xml为基础的,下面是一个空的xml文件: 1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <databaseChangeLog 4 xmlns="http://www.liquibase.org/xml/ns/dbchangelog" 5 xml

liquibase报错

这几天发布sql代码遇到一些问题: 根本原因是我的配置文件中有一个全角的中文数字1造成.另外还需要删除以前的老的liquibase记录表:DATABASECHANGELOG和DATABASECHANGELOGLOCK .

liquibase的使用

liquibase是什麽? liquibase是一个数据库持续集成插件.独立于数据库存在,oracle,mysql,db2,h2,sql server,postgresql都能使用.它使用配置文件来更新数据库结构,并加入版本日志. 在web项目启动时,liquibase会根据配置文件,修改数据库结构. 过一段时间,我会继续编辑这篇文章,并分享我使用liquibase的经验,分享github的代码.

Liquibase 了解

Liquibase 是一个用于跟踪.管理和应用数据库变化的开源的数据库重构工具.它将所有数据库的变化(包括结构和数据)都保存在 XML 文件中,便于版本控制. Liquibase 具备如下特性: 不依赖于特定的数据库,目前支持包括 Oracle/Sql Server/DB2/MySql/Sybase/PostgreSQL/ 等 12 种数据库,这样在数据库的部署和升级环节可帮助应用系统支持多数据库 提供数据库比较功能,比较结果保存在 XML 中,基于该 XML 你可用 Liquibase 轻松部

Liquibase使用小结

简介 Liquibase是一个用于跟踪.管理和应用数据库变化的开源数据库重构工具.它将所有数据库的变化保存在XML文件中,便于版本控制和项目部署升级. 本文档以TC标注中的任务管理模块(dw-digit-manager)示例,简要说明liquibase使用方法.XML文件所在目录:dw-digit-manager\src\main\resources\config\liquibase. 如上图所示,每个数据库定义的dataBaseChangeLog下对应若干条changeSet,每个change

Flyway对比Liquibase(转)

数据库迁移工具. 很多应用的运行是需要数据库支持的,而随着快速迭代,产品更替的节奏加快,除了产品本身需要不断更新以外,数据库也需要做出合适的管理了. 为什么需要数据库迁移管理 比如第一个版本的产品只包含了最基本的功能,而第二版本就需要增加评论功能,这就涉及到数据结构的修改(包括创建新表,修改旧表的列,增加已有表的列等等).直接进入产品数据库修改数据库并不适合快速的开发节奏,不仅仅不安全,更多的情况下数据库可能并不对外或者并不适合对外直接暴露连接,比如PAAS平台的数据库以服务的形式直接提供. 对

Grunt Bower构建前端

Grunt + Bower-前端构建利器 目前比较流行的WEB开发的趋势是前后端分离.前端采用重量级的Javascript框架,比如Angular,Ember等,后端采用restful API的Web Service服务,通过JSON格式进行数据交互. 对于后端服务语言来说,不论是Ruby的rake,Java中的Maven或Gradle,或是Scala中的SBT,他们都能够提供编译运行.运行测试.打包部署.依赖管理等功能.再加上强大的package系统,让它可以插拔式的使用很多强大的功能,像数据