`
liangjing23
  • 浏览: 1107 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

dbmaintian

阅读更多

dbmaintain的应用

 

参考文件:http://www.dbmaintain.org/overview.html。

 

项目中想用dbmaintain来自动管理数据库脚本,但网上相关资料太少,除了官方http://www.dbmaintain.org/overview.html。 所以本人根据官方网站,把自己的尝试经验给分享一下,请多多指正。好了,废话少说,创建一个例子,然后再说明细节以及注意的地方。

一创建例子(在这里我选用java代码来做,除此之外还有ant, 命令行)
1, 巧妇难为无米之炊,先下载需要用到的jar包,https://sourceforge.net/projects/dbmaintain/files/ 目前最新版本dbmaintain-1.0.1-src.zip 解压缩之后就可看到一个lib目录,里面的两个jar包等下就是我们要用的。

2, 创建一个web project(当然java project也一样),导入上面提到的两个jar包commons-logging-1.1.1.jar and dbmaintain-1.0.1.jar,另外,还需要额外导入一个jdbc的jar包,别忘了,我们是要操作数据库。在这个我用的是mysql-connector-java-5.1.7-bin.jar.

3, 配置 dbmaintain.properties,这个比较多一点,见附件,里面做了说明。(我的意思很简单,先运行起来再说)。当然,你可以有两个地方找到这个文件,一种是到官网 http://www.dbmaintain.org/configuration.html 复制下来,(我是用这个,因为是简洁版)。另一个是在我们上面下的压缩包里(注意只有含源文件包里才有),解压缩后的目录dbmaintain-1.0.1-src\src\resources\dbmaintain-default.properties。

4,组织sql scripts,这是重点,四种脚本类型(Incremental Repeatable Postprocessing Patches),下面一一道来。

先看组织方式,混个脸熟
 
scripts/incremental/01_v1.0/01_products_and_orders.sql
                                                    02_users.sql
                                                    03_#PATCH_add_status.sql
                               02_v1.1/01_add_barcode_column.sql
                                             02_drop_itemcode_column.sql
          repeatable/proc_purge_old_orders.sql
                              proc_disactivate_inactive_users.sql
   postprocessing/01_compile_all.sql
                                 02_grant_select_to_read_user.sql
                      
  1) Incremental,顾名思义,增量式的,有顺序的。说明:scripts是所有脚本的总目录,随便你怎么命名,下面有三个目录,分别对应三种脚本类型,Patches除外。incremental放增量式脚本的目录,目录名字可以任取。下面可以再定义文件夹,此时文件夹就有序号了(index number),这里的两个文件夹是体现两个版本的。
                   
  注意:这种脚本时会按顺序执行(从小到大),且每个脚本只执行一次。
 
  2) Repeatable,顾名思义,可重复执行的,为什么要弄个可重复执行呢?因为我们有经常要修改的脚本,如function ,procedure,views,每次修改完之后,就会执行一遍。
     
  注意:这种脚本不可以有编号, 不可以放到有编号的目录下,否则会报错。
 
  3) Postprocessing, 我给的理解是后置执行,也就是等所有的脚本都执行完了之后,才执行。但它也不是每次都执行,什么时候会被执行呢?当脚本有变动,包括Postprocessing目录下的脚本,则所有的postprocessing脚本都会执行一遍。比如我们修改了repeatable/proc_purge_old_orders.sql,
     
  注意:目录名必须是postprocessing, 如果不是则被认为是Incremental脚本。可以有index number(序号),如果有序号则会按顺序执行。
 
  4) Patches,补丁。什么情况才算是补丁呢?用官方的话说就是:当你要增加一个脚本,而它的序号低于已经执行过的脚本的序号时,这个脚本就必须是补丁形式,否则会报错。比如上面的 03_#PATCH_add_status.sql 是新加进去的,(补丁的组织形式就是在序号后面加上#PATCH就行,如例子),我们的脚本已经执行到了文件夹02_v1.1里面了,很明显,这个序号高于01_v1.0下的所有序号,满足打补丁的情况。
 
5,创建数据库,dbmaintain,dbmaintain2,创建两个是为了说明同时管理多个数据库的情况。参考附件,多数据库组织方式1.jpg (对脚本文件区分);  多数据库组织方式2.jpg(用文件夹区分,建议使用), 配置在配置文件里有说明,只要把对应的参数改过来就行。

6,建一个类DBMaintain.java,看附件,里面有对主要命令的说明。完毕

总结,搭建好环境之后,就是组织脚本格式,和配置dbmaintain.properties就可行了。

 

  • 大小: 7.7 KB
  • 大小: 12.6 KB
2
0
分享到:
评论

相关推荐

    基于改进YOLOv5s的森林烟火检测算法.pdf

    基于改进YOLOv5s的森林烟火检测算法.pdf

    人力资源管理工具绩效考核excel模板01.xlsx

    人力资源管理工具绩效考核excel模板01

    施工班组长绩效考核表.xls

    施工班组长绩效考核表

    57 -营业部经理绩效考核表1.xlsx

    57 -营业部经理绩效考核表1

    XX公司行政部绩效考核指标.xls

    XX公司行政部绩效考核指标

    ant-apache-xalan2-1.9.4-2.el7.x64-86.rpm.tar.gz

    1、文件内容:ant-apache-xalan2-1.9.4-2.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/ant-apache-xalan2-1.9.4-2.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    部门绩效考核表模板(基于KPI以月度为例2).xlsx

    部门绩效考核表模板(基于KPI以月度为例2)

    11-6-质检员绩效考核表(含自动计算、等级评价及任意设置等级).xlsx

    11-6-质检员绩效考核表(含自动计算、等级评价及任意设置等级)

    2024年最新全国河流、湖泊矢量数据(数据权威)

    2024最新全国河流湖泊矢量数据 【数据介绍】 2024年中国河流湖泊数据 一份包含中国境内所有主要河流和湖泊的地理信息数据。 数据格式:Shapefile:广泛使用的GIS数据格式,方便在各类GIS软件中使用。 数据获取:访问OpenStreetMap官网,通过导出工具选择中国区域并下载所需的数据。 使用Geofabrik等第三方网站,可以下载预处理好的中国区域的OSM数据。 数据使用:GIS软件:如QGIS、ArcGIS等,用户可以在这些软件中导入OSM数据进行可视化、分析和编辑。 数据应用: 环境研究:分析河流湖泊的水质变化,研究水资源分布及其环境影响。 城市规划:用于规划城市水系、洪水防控、水资源管理等。 导航和旅游:为河流湖泊的导航和旅游路线规划提供数据支持。 科研:为水文地理研究、生态保护、气候变化等领域提供基础数据。 数据特点: 实时更新:OSM数据由全球用户贡献,具有较高的实时性和更新频率。 开放性:所有数据都在开放许可下发布,允许用户自由使用、修改和分发。 详细性:由于全球志愿者的不断努力,数据细节较为丰富,涵盖了从主要河流湖泊到小型水体的广泛范围。 数据时间2024年5月,shp格式,数据来源OpenStreetMap。 OpenStreetMap(OSM)介绍: 一个开放的、免费的、全球性的地图项目,由全球的志愿者和地图爱好者们共同创建和维护。 OSM的数据包括道路、建筑、公园、河流、湖泊等各类地理信息。由于是由众多志愿者共同编辑,OSM的数据具有很高的实时性和详细程度,特别是在一些活跃的区域,地图数据的更新速度和精度往往超过商业地图服务。 用户可以直接在OSM官网下载地图数据,数据格式主要有OSM XML和PBF等。此外,还有一些第三方网站和工具提供更加便捷的数据下载和处理服务,如Geofabrik、Overpass API等。 OSM的数据可以在各种GIS软件中使用,如QGIS、ArcGIS等。此外,还可以使用Python的OSMnx、GeoPandas等库进行编程处理,或者通过Leaflet、Mapbox等JavaScript库将OSM数据集成到web地图应用中。 OSM的所有数据都在开放许可下发布,允许用户自由使用、修改和分发。这使得OSM成为了许多公共项目、研究机构和商业公司的重要数据来源。

    部门绩效考核评分表.xlsx

    部门绩效考核评分表

    12-11-运输车队长绩效考核表(含自动计算、等级评价).xlsx

    12-11-运输车队长绩效考核表(含自动计算、等级评价)

    ant-javadoc-1.9.4-2.el7.x64-86.rpm.tar.gz

    1、文件内容:ant-javadoc-1.9.4-2.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/ant-javadoc-1.9.4-2.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    springboot整合 freemarker方法

    springboot整合 freemarker方法

    apache-commons-codec-1.8-7.el7.x64-86.rpm.tar.gz

    1、文件内容:apache-commons-codec-1.8-7.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/apache-commons-codec-1.8-7.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    (数据权威)全国旅游抽样调查数据

    《旅游抽样调查资料》是反映入境游客在华(内地)花费和国内居民国内旅游情况的资料性年刊,分为上下两篇。 上篇为在华(内地)停留时间在3个月以内的入境游客抽样调查资料,由综合分析报告和调查分类数据两部分组成,分类数据包括:入境游客的主要特征,入境外国人、港澳台同胞的花费水平和花费构成、在境内的停留时间以及入境次数、流向和对住宿单位的选择等。 下篇为国内旅游抽样调查资料,汇集了对城镇居民和农村居民的国内旅游抽样调查结果,共分为四个部分:第一部分为综合分析报告;第二部分为国内旅游出游及花费情况;第三部分为城镇居民国内旅游抽样调查分类数据;第四部分为农村居民国内旅游抽样调查分类数据。

    二代身份证信息读取(vfp8.0)

    1、表单界面,身份证信息保存在dbf表中,供vfp应用使用,可导出为xls电子表格。 2、提供了身份证过期校验和查询功能。

    人事行政主管绩效考核评分表.xls

    人事行政主管绩效考核评分表

    08 -大堂副理绩效考核表1.xlsx

    08 -大堂副理绩效考核表1

    apr-1.4.8-7.el7.x64-86.rpm.tar.gz

    1、文件内容:apr-1.4.8-7.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/apr-1.4.8-7.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    ComponentNameError解决办法.md

    ComponentNameError解决办法.md

Global site tag (gtag.js) - Google Analytics