⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 full.sh

📁 一本介绍oracle的书籍
💻 SH
字号:
#!/usr/local/bin/bashfirst_msg(){    echo "***********************************************************"    echo "  "    echo "The batch process JOB_BACKUP_FULL is starting at [ 'date' ]"    echo "Excuting by LogName = [ $LOGNAME ]"    echo "  "}final_msg(){    echo "  "    echo "The batch process JOB_BACKUP_FULL completed at [ 'date' ]"    echo "Excuting by LogName = [ $LOGNAME ]"    echo ">>>>> Please Make Sure That It Has Been Done Successfully, "    echo ">>>>> Otherwise You Must Re-do It."    echo "  "    echo "***********************************************************"}#**************************#*      backup_begin      *#**************************backup_begin(){    echo "alter tablespace $1 begin backup;" > $TMP_SQL    sqlplus -s $USER_PASSWD <<EOFstart $TMP_SQLEOF    if [ $? != 0 ]    then        return $FAIL    fi      return $SUCCESS }#**************************#*      backup_end        *#**************************backup_end(){    echo "alter tablespace $1 end backup;" > $TMP_SQL    sqlplus -s $USER_PASSWD <<EOFstart $TMP_SQLEOF    if [ $? != 0 ]    then        return $FAIL    fi      return $SUCCESS }#********************************#             Main              *#********************************USER_PASSWD=system/systemBACKUP_DEST=$BACKUP_PATH/fullDEVICE=/dev/rmt/ctape1BACKUP_CFG=$TRC/backup.cfgTRC_FILE=$TRC/BACKUP_FULLTMP_SQL=$TRC/backup_full_tmp.sqlSUCCESS=0FAIL=1first_msgrm -f $BACKUP_CFGsqlplus -s $USER_PASSWD <<EOF >/dev/nullset heading off;set term off;set echo off;set pagesize 0;set linesize 1000;set trimspool on;set trimout on;set feedback off;set colsep =;spool $TRC/backup.spl;select tablespace_name,file_name from dba_data_files order by tablespace_name,file_name;spool off;exitEOFtr -d ' ' <$TRC/backup.spl >$BACKUP_CFGrm -f $TRC_FILEif [ ! -f $BACKUP_CFG ]then    echo "备份配置文件缺失" >$TRC_FILE    echo "$BACKUP_CFG not found"    exitfimkdir -m 777 -p $BACKUP_DESTif [ ! -d $BACKUP_DEST ]then    echo "备份目录创建失败" >$TRC_FILE    echo "$BACKUP_DEST create fail"    exitficd $BACKUP_DESTrm -f *#*******************************#      backup control file     *#*******************************echo "==========================================================="echo "正在备份控制文件" > $TRC_FILEecho "Backup control begin on [ 'date' ]"echo "alter database backup controlfile to '$BACKUP_DEST/control.ctl';" > $TMP_SQLsqlplus -s $USER_PASSWD <<EOFstart $TMP_SQLEOFif [ $? != 0 ]then    echo "备份控制文件失败" > $TRC_FILE    echo "Backup control file fail"    exitfi echo "Backup control end on [ 'date' ]"#*******************************#      backup tablespaces      *#*******************************TABLESPACES='cut -d= -f1 $BACKUP_CFG|uniq'for tablespace in $TABLESPACESdo    echo "==========================================================="    echo "正在备份$tablespace" > $TRC_FILE    echo "Backup $tablespace begin on [ 'date' ]"    backup_begin $tablespace    if [ $? != 0 ]    then        echo "备份$tablespace失败" > $TRC_FILE        echo "Turn on backup option of $tablespace fail"        exit    fi    DATAFILES='awk -v var=$tablespace -F = '$1==var  {print $2}' $BACKUP_CFG'    for datafile in $DATAFILES    do        if [ ! -r $datafile ]        then            backup_end $tablespace            echo "备份$tablespace失败" > $TRC_FILE            echo "$tablespace:$datafile unreadable"            exit        fi        compress -c $datafile > $BACKUP_DEST/'basename $datafile'.Z        if [ $? != 0 ]        then            backup_end $tablespace            echo "备份$tablespace失败" > $TRC_FILE            echo "Backup $tablespace:$datafile fail"            exit        fi    done    backup_end $tablespace    echo "Backup $tablespace end on [ 'date' ]"done#**************************#        tar files        *#**************************echo "==========================================================="echo "正在备份至磁带" > $TRC_FILEecho "tar to tape on [ 'date' ]"cd $BACKUP_DESTtar -cvf $DEVICE *if [ $? != 0 ]then    echo "备份至磁带失败" > $TRC_FILE    echo "tar to tape fail"    exitfiecho "tar to tape on [ 'date' ]"echo "==========================================================="echo "全备份已完成" > $TRC_FILEfinal_msg

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -