rman备份脚本
【摘要】 开始判断是否全备份: startrman.sh #------------------------------------------------------------------------------------------------------------#Environment variable setting#----------------------------------...
开始判断是否全备份:
startrman.sh
#------------------------------------------------------------------------------------------------------------
#Environment variable setting
#------------------------------------------------------------------------------------------------------------
ORACLE_SID=kfptdb
export ORACLE_SID
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$PATH
export PATH
SH_HOME=/backup/oracle/kfptdb/
export SH_HOME
DATE=`date +"%Y%m%d%H%M"`
week=`date +"%w"`
rmanerror=$SH_HOME/script/rmanerror.log
#-----------------------------------------------------------------------
#Confirm whether the oracle is runing
#-----------------------------------------------------------------------
sqlplus -s "/as sysdba"<<EOF
whenever sqlerror exit 1
whenever oserror exit 1
select sysdate from dual;
exit
EOF
if [ $? -gt 0 ]; then
exit
fi
#-----------------------------------------------------------------------
#Begin to backup
#-----------------------------------------------------------------------
if [ $week = "2" ] ; then
rman target / @$SH_HOME/script/fullbackup.sql log=$SH_HOME/log/rmanfullback`date +"%Y%m%d%H%M"`.log
else
rman target / @$SH_HOME/script/archbackup.sql log=$SH_HOME/log/rmanarchback`date +"%Y%m%d%H%M"`.log
fi
########################################################
全备份脚本:
fullbackup.sql
run{
allocate channel d1 type disk;
backup filesperset 10 full format '/backup/oracle/kfptdb/fullbackup/FULLBAK_%d_%T_%s_%p' tag db_full_bak database;
sql 'alter system archive log current';
backup filesperset 50 archivelog all delete all input tag arch_bak format '/backup/oracle/kfptdb/archbackup/ARCHBAK_%d_%T_%s_%p';
backup format '/backup/oracle/kfptdb/ctlbackup/CTLBAK_%d_%T_%s_%p' tag ctl_bak current controlfile;
backup format '/backup/oracle/kfptdb/ctlbackup/INITBAK_%d_%T_%s_%p' tag initpara_bak spfile;
release channel d1;
report obsolete;
delete noprompt obsolete;
crosscheck backup;
delete noprompt expired backup;
}
备份归档日志:
run{
backup archivelog all format '/backup/oracle/kfptdb/archbackup/ARCHBAK_%d_%T_%s' tag arch_bak delete all input;
}
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)