在oracle資料庫中,rman備份的腳本非常多,下面介紹一例shell腳本如何通過rman備份,以及ftp上傳rman備份檔案以及歸檔日志檔案的腳本。
fullback.sh 裡面調用rman指令做資料庫備份,它使用的cmdfile為/home/oracle/backup/bin/fullback.rcv,同時在/home/oracle/backup/logs目錄下生成日志檔案。
fullback.rcv檔案非常簡單, 如下所示:
rman生成的備份檔案,需要通過ftp上傳到ftp伺服器,一則資料庫伺服器沒有這麼多空間存儲多天的備份,二則是出于容災、資料安全需要。
下面腳本中ftp伺服器,使用者名密碼均使用xxx替代,在實際環境中,使用具體的資訊替代即可。
另外,關于歸檔日志也需要每隔2小時上傳一次到ftp伺服器,2小時上傳一次歸檔日志的shell腳本如下所示:
最後需要将rman備份生成的日志檔案,以及ftp上傳備份檔案以及歸檔日志的記錄通過郵件形式發送給dba或系統管理者,
最後在crontab
作業裡面配置調用這些shell腳本。例如如下所示,在1:01分執行fullback.sh
,每隔兩個小時(例如0:50、2:50...)執行一次ftp2hours.sh, 在每天早上8:40執行chkbackandmail.sh
發送fullback.sh 以及ftp2hour.sh的執行日志記錄。
