自动部署,创建数据库单元的方法

1) 首先创建系统模板压缩文件,命名规则见目录结构,保存在系统的部署服务器中

2) 系统中定义可用的系统实例。

数据库中必须存在存储过程,

         执行srp_addroom存储过程,参数为 roomid

DELIMITER $$

create procedure srp_addroom(in roomid bigint) 

begin

end$$

DELIMITER ;

  • 系统升级数据库的步骤

1) 创建sql文件

2) 配置中创建升级记录,并执行该记录。 系统可以判断数据库的版本与系统版本是否一致,如果一致不在更新,所以如果更新失败,可以继续多次更新。

不能判断是否中间跳过中间版本,所以每次跟新必须全部成功完成后在进行下一次更新。 


  • 模板文件命名


    • 模板文明名称

模板代码 +'_'+ 数据库版本+ '.tar.gz'

    • 内容文件命名        

模板代码.sql

    • 升级文件的命名

       模板代码+"_"+版本+".sql";

  • 模板创建数据库部署的批处理文件


参数1 压缩文件的文件目录,

参数2 文件名称(无扩展名)

参数3 数据库名称 

参数4 配置文件名称

/conf/createdb.sh

#!/bin/bash

set -o errexit

tmppath=$1

filename=$1$2'.tar.gz'

sqlfile=$1$2'.sql'

dbname=$3

config=$4

#echo $filename

tar -zxf  ${filename}  -C ${tmppath}

mysql --defaults-extra-file=${config}  -e" use  ${dbname} ;  source  ${sqlfile}  ;"

rm $filename

rm $sqlfile



  • 执行sql的批处理文件

/conf/exedbsql.sh


#!/bin/bash

set -o errexit

dbname=$1

sqlfile=$2

config=$3

mysql --defaults-extra-file=${config}  -e" use  ${dbname} ;  source  ${sqlfile}  ;"


Created with the Personal Edition of HelpNDoc: Free EBook and documentation generator