这里本人是在MAC机上安装使用

1. 下载 mybatis-migraions安装包,地址:https://www.oschina.net/news/94218/mybatis-migrations-3-3-2-released
   GitHub download address: https://github.com/mybatis/migrations/releases/download/mybatis-migrations-3.3.2/mybatis-migrations-3.3.2-bundle.zip
2. 解压安装包,放在自己定义的目录下,(mac)这里是/Users/xxx/mybatis-migrations 下
3. 设置环境变量,(mac)命令行:
   vi ~/.bash_profiles
   export MIG_HOME=/Users/xxx/mybatis-migrations
   export PATH="$MIG_HOME/bin:$PATH"
   按esc,保存:wq
   立即刷新配置,source ~/.bash_profile
4. 初始化目录:这里目录放在 /Userx/xxx/mybatis-migrations/db
   命令: migrate init
5. 新建数据库变更,命令:migrate new "liyq add table tabc"
   tabc是新建表
6. 查看目标DB状态,migrate status
7. 更新执行的脚本,migrate up
8. 后退执行脚本: migrate down
9. 以上status up down 命令 都可以加参数 --evn=uat
   比如:migrate status --env=uat用来查看uat.properties中指向的那个目标DB的当前状态;
   没有指定env参数时,默认为development;
   通过这个简单的参数,团队可以轻松的管理多个DB环境状态,任意切换、前进和后退,而脚本只有一套。
10. 生成DB变更脚本, 你可能会打算直接在DB目录中找出需要发布的脚本文件拿到生产环境去执行,但这样做就跟没有使用Migrations的团队没什么区别了;
    Migrations的script命令就是用来做这件事的,执行下列命令,你会得到想要的东西:
    命令:migrate script 20130614164456 20130709163435 > release20130710.sql
   如果将上面命令中的两个版本号对调位置,得到的就是本次系统发布的DB回退脚本,
   一旦你在生产DB执行了数据库变更后又不想发布应用了(比如突然发现这个应用版本存在严重缺陷),
   那么这个回退脚本就派上用场了——它能帮你把生产DB恢复到之前的状态——能够使前一版本应用正常工作的状态,而不至于使你陷入进退两难!

11. 新建脚本, migrate new "add_tables_0308", 然后,你会在migration的db/scripts下,看到 20190308103231_add_tables_0308.sql这个文件
12. 填写脚本内容,vi 20190308103231_add_tables_0308.sql
    -- Migration SQL that makes the change goes here.  需要做的SQL
    输入如下:
create table szl_info(
    id bigint(20) not null auto_increment primary key,
    szl_infors varchar(2000),
    yn int(1)
);  
commit;

-- SQL to undo the change goes here.  回退做的SQL
    输入如下说:
drop table szl_info;
按ecs, 保存 :wq

13. 执行正向看步骤7,执行逆向看步骤8。

附加多环境配置执行,以migrate up为例,比如我们现在有2个库,配置文件名分别为:local00.properties  local01.properties,那我们使用如下命令一次性执行2个库的操作,如下:

migrate up --env=local00 | migrate up --env=local01

MyBatis-Migrations安装和使用的更多相关文章

  1. IntelliJ IDEA MyBatis插件安装

    打开IntelliJ IDEA工具,打开菜单File--> Settings 选择 Plugins,点击Browse repositories,在搜索框输入MyBatis.

  2. mybatis介绍安装

    MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简单 ...

  3. mybatis(一)安装

    1.创建web项目,添加jar包 2.创建实验表user_t 3.在src下创建conf.xml文件,如下 <?xml version="1.0" encoding=&quo ...

  4. mybatis 插件安装与使用

    安装 1.在MarketPlace 中搜索 MyBatipse  安装 2.下载MyBatipse 插件 使用 ......

  5. Mybatis学习第一天——Mybatis的安装配置以及基本CURD操作

    1.Mybatis下载 Mybatis是开源的持久层框架,能够度jdbc进行简单的封装,但其并不是完全的ORM(Object Relational Mapping,对象关系映射),无法脱离数据库进行适 ...

  6. Mybatis Generator 安装(idea+maven)

    1.在Intellij IDEA创建maven项目(本过程比较简单,略) 2. 在maven项目的pom.xml 添加mybatis-generator-maven-plugin 插件 <bui ...

  7. idea 安装mybatis plugin (mybatis插件)

    注意:可以用免费版本的,就是下面没有 被红框圈中的 Free Mybatis Plugin 安装上以后需要破解,先找到下面的文件 打开文件,设置其中的key 和 value : 这里面的key 和 v ...

  8. Mybatis Plugin插件安装破解及使用

    2018年2月更新 2018年2月份,提供一个网上比较多的一个版本V3.21版本,下载资源里面有个已整合版直接解压放入C:\Users\你的用户名\.IntelliJIdea2017.3\config ...

  9. IDEA mybatis mapper类跳转到xml文件

    安装插件 free mybatis plugin,安装完成后重启,ctrl+单击即可跳转.

随机推荐

  1. Linux下 导出postgrelSql 数据库

    登陆postgrel su - postgres 进入postgrelsql 安装目录下的bin目录 cd/usr/pgsql-11/bin 执行导出命令 ./pg_dump -U username ...

  2. sigaction和实时信号sigqueue

    sigaction函数sigaction函数的功能是用于改变进程接收到特定信号后的行为.int sigaction(int signum, const struct sigaction *act,st ...

  3. [LeetCode] 95. Unique Binary Search Trees II 唯一二叉搜索树 II

    Given n, generate all structurally unique BST's (binary search trees) that store values 1...n. For e ...

  4. [LeetCode] 165. Compare Version Numbers 比较版本数

    Compare two version numbers version1 and version1.If version1 > version2 return 1, if version1 &l ...

  5. ajax提交json数据到后端C#解析

    本文链接:https://blog.csdn.net/qq_22103321/article/details/78015920 前端提交json数据 $.ajax({ type: "post ...

  6. (CSDN迁移) 输入一个链表,从尾到头打印链表每个节点的值

    题目描述 输入一个链表,从尾到头打印链表每个节点的值. 思路1. 翻转链表,使用java自带的翻转函数或者从头到尾依次改变链表的节点指针 /** * public class ListNode { * ...

  7. TCP/IP学习笔记15--IP分割处理与再构成处理,路径MTU发现

           家庭应该是爱.欢乐和笑的殿堂.--日 木村久一        IP属于网络层,下一层时数据链路层,在数据链路层,不同类型的数据链路的最大传输单元(MTU)都不尽相同.例如,连接两个路由器 ...

  8. 删除List集合中的元素你碰到过这样的陷阱吗?

    删除List的三种方式: (1) 普通遍历 : @Test public void testList(){ ArrayList<String> list = new ArrayList&l ...

  9. Django框架4——form表单

    HTML表单一直是交互性网站的支柱,使用form组件对用户通过表单提交的数据进行访问.有效性检查以及其他处理 从Request对象中获取数据 URL相关信息 属性/方法 说明 举例 request.p ...

  10. 函数的练习3——python编程从入门到实践

    8-12 三明治: 编写一个函数,它接受顾客要在三明治中添加的一系列食材.这个函数只有一个参数(它收集函数调用中提供的所有食材),并打印一条消息,对顾客点的三明治进行概述.调用这个函数三次,每次提供不 ...