数据库创建和升级
自动部署,创建数据库单元的方法
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