使用shell脚本对linux oracle sql进行升级(增量/全量)

1.背景需求:

    由于我们公司的业务偏向于sass服务,可能需要给一些定制化的客户提供部署应用,而对于不用的用户可能使用的版本也不一致.而我这边的业务偏向于数据库层次,比如建表,初始数据填充,sql升级等等.

而且我们这个是属于刚开始的项目,需要花费最小的时间代价去做这些事情.所以采用shell脚本去完成,业务保证三点即可:

1.第一次sql部署,怎么全量执行

2.老客户从version1版本升级到version2版本,怎么做到只升级version2的版本包的sql

3.新客户想用最新的version2版本,怎么做到全量更新,再顺序执行执行version1,version2的版本包


2.前置和脚本详情

    脚本截图:

    

      1.必须有/sql目录 (按自己需求定义目录)

      2.必须有/sql/log目录 (按自己需求定义目录)        赋予权限:chmod 777 /sql    

      3.进入sqlplus执行用户        输入sqlplus能有控制台输出    

      4.执行sh 脚本.sh(可以选择增量执行还是全量执行),输入用户名,密码,服务名,版本(如果是增量发布)   

      5.执行完毕之后:进入/sql/log (按自己需求定义目录) 目录查看输出日志

3.脚本目录


脚本目录

1.choose_install.sh  这是一个选择执行脚本 直接输入enter执行初始全量升级,1是增量升级 2是全量-指定版本迭代升级(会把低于这个版本的sql全部执行)

    eg:

    

        对于全量升级来说:需要输入三个指定参数:数据库用户名,密码,服务名

        对于其他的升级来说:需要输入四个指定参数:数据库用户名,密码,服务名.版本

        说明:版本sql文件都统一用时间命名:比如:2021092401,所以只要输入2021092401即可

2.full_incr_upgradeSql1.sh 全量-指定版本迭代升级

3.full_upgradeSql.sh 全量升级:输入参数形式 eg:sh full_upgradeSql.sh C##trade trade orcl(数据库用户名,密码,服务名)

4.full_upgradeSql1.sh 全量升级:弹框输入参数

5.incr_upgradeSql.sh 增量升级:输入参数形式 eg:sh incr_upgradeSql.sh C##trade trade orcl 2011092401(数据库用户名,密码,服务名.版本)

6.incr_upgradeSql1.sh 增量升级:弹框输入参数


5.脚本下载链接

链接:https://pan.baidu.com/s/11sgdksO7SUOSiTncO4B_Bw

提取码:hgu3

你可能感兴趣的:(使用shell脚本对linux oracle sql进行升级(增量/全量))