ITPub博客

首页 > 数据库 > 数据库开发技术 > Sybase备份脚本 btmbfe_sybase_backup.sh

Sybase备份脚本 btmbfe_sybase_backup.sh

原创 数据库开发技术 作者:fjzcau 时间:2015-02-08 22:39:14 0 删除 编辑
#!/bin/sh

BACKUPDIR=/sybase/dumpdb
log=$BACKUPDIR/dbbackup.log
ddays=3  #3天前的文件删除

Date=`date +%Y%m%d`
dayDir=${BACKUPDIR}/MBFEDB_BT_${Date}
tarfile=MBFEDB_BT_${Date}.tar
zfile=${tarfile}.Z

echo "--------------------------------------------------------" >> $log
nowtime=`date +"%Y%m%d %H:%M:%S"`
echo "--> 1-1 $nowtime backup begin" >> $log

if [ -d $dayDir ]
then
    echo "--> 1-2 Dir $dayDir exist!" >> $log
else
    mkdir $dayDir
    echo "--> 1-3 Create dir $dayDir  ok!" >> $log
fi

#-- dump --#
DBName='MBFEWKDB MBFEHISDB DIRWAYSDB DISWAYSDB'
chown -R sybase $dayDir

for db in $DBName
do
    nowtime=`date +"%Y%m%d %H:%M:%S"`
su - sybase -c "isql -Usa -PBtsa1@ <
dump database $db to '$dayDir/${db}_${Date}.dump'
go
dump transaction $db with truncate_only
go
!"
    echo "--> 2 $nowtime $db dump  " >> $log
done

#-- 检查 dump 备份文件 --#
flag=0
for db in $DBName
do
if [ -f $dayDir/${db}_${Date}.dump ]
then
    echo "--> 2-1 $nowtime $db dump ok   (flag=$flag)" >> $log
else
    flag=`expr $flag + 1`
    echo "--> 2-2 $nowtime $db dump fail (flag=$flag)" >> $log
fi
done

if [ "$flag" != "0" ]
then
    echo "--> 2-3  backup fail (flag=$flag) " >> $log
    echo "--------------------------------------------------------\n\n" >> $log
    exit 2
fi


#-- 打包 --#
nowtime=`date +"%Y%m%d %H:%M:%S"`
echo "--> 3-1 $nowtime tar begin" >> $log
tar -cf $BACKUPDIR/$tarfile $dayDir
res=$?
if [ "$res" = "0" ]
then
    echo "--> 3-2 tar ok" >> $log
else
    echo "--> 3-3 tar fail(res=$res)" >> $log
    echo "--------------------------------------------------------\n\n" >> $log
    exit 3
fi

#-- 压缩 --#
nowtime=`date +"%Y%m%d %H:%M:%S"`
echo "--> 4-1 $nowtime compress begin" >> $log
compress $BACKUPDIR/$tarfile
res=$?
if [ "$res" = "0" ]
then
    echo "--> 4-2 compress ok   (res=$res)" >> $log
    cd $BACKUPDIR
    rm -rf $dayDir
else
    echo "--> 3-3 compress fail (res=$res)" >> $log
    echo "--------------------------------------------------------\n\n" >> $log
    exit 4
fi

echo "--> 5 Delete files of $ddays days before " >> $log
find $BACKUPDIR -mtime +$ddays -name "MBFEDB_BT_*.Z" >> $log
find $BACKUPDIR -mtime +$ddays -name "MBFEDB_BT_*.Z" | xargs  -i /bin/rm {}

ftp -i -n 10.8.7.100 <
user coredb coredb
bin
put $zfile
bye
!

res=$?
echo "--> 6 backup success (res=$res)" >> $log
echo "--------------------------------------------------------\n\n" >> $log

exit 0 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22661144/viewspace-1430690/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 网页密码保存
请登录后发表评论 登录
全部评论

注册时间:2011-04-03

  • 博文量
    208
  • 访问量
    547150