標籤:備份 shell nfs tar
1、背景說明
公司磁帶庫壞了。。每天oracle的備份往哪裡放?
2、備份方式重新規劃
原備份方式
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M00/8F/EC/wKiom1jtyzGCsWHOAADObsChJ9A142.png" title="backupbefore.png" alt="wKiom1jtyzGCsWHOAADObsChJ9A142.png" />
現備份方式
650) this.width=650;" src="https://s2.51cto.com/wyfs02/M00/8F/EA/wKioL1jtyz2iGxQKAAC6mNObGAg441.png" title="backupafter.png" alt="wKioL1jtyz2iGxQKAAC6mNObGAg441.png" />
3、備份指令碼分享
小白寫了一個備份的shell指令碼,分享出來
#!/bin/bash# tar oraclebackup file # check RMAN is run?#我做RMAN備份的時候都會建立一個RMAN日誌,所以此日誌就可以判斷我的RMAN是否執行了filename="/mnt/rman/log/RmanBackup_`date +%y%m%d`.log" comparedata="Recovery Manager complete."if [ -e $filename ];then echo "`date` RMAN is run" &>> /OPS/tarlogelse echo "`date` RMAN is not run,please check" &>> /OPS/tarlog exit 1fi# check RMAN is OK?#通過判斷我的日誌最後結果,判斷RMAN備份是否成功,如果沒有成功,我也沒必要備份了data=`tail -1 $filename`if [ "$data" == "$comparedata" ];then echo "`date` Rman backup sucess" &>> /OPS/tarlogelse echo "`date` Rman backup fail" &>> /OPS/tarlog exit 2fi# tar backupfile and move to backupserver#將當天的備份組壓縮備份出來並move至對應nfs提供的檔案夾,我300GB的備份壓縮後只要30個G,壓縮比還是很驚人的/usr/bin/find /mnt/rman -name ‘oradb1*‘ > /OPS/tarlistfor i in `/bin/cat /OPS/tarlist`;do echo "`date` tar $i start" &>> /OPS/tarlog tar -zcvf $i.tar.gz $i &>> /OPS/tarlog doneif [ $? -eq 0 ];then echo "`date` tar end success" &>> /OPS/tarlog mv /mnt/rman/*.tar.gz /oraclebackup if [ $? -eq 0 ];then echo "`date` move to oraclebackup end success" &>> /OPS/tarlog else echo "`date` move to oraclebackup fail" &>> /OPS/tarlog fielse echo "`date` tar fail" &>> /OPS/tarlogfi
本文出自 “Open World” 部落格,請務必保留此出處http://voidyao000.blog.51cto.com/12458042/1915210
通過shell指令碼實現對oracle RMAN備份組壓縮並異地備份