1. 程式人生 > >DB2自動備份,並上傳到ftp

DB2自動備份,並上傳到ftp

##在root使用者中執行下面指令碼,把當天的備份和歸檔日誌上傳到ftp,並刪除本地過期的日誌和備份

#!/bin/sh

su - dbname -c "db2 backup db dbname online to /home/dbname/dbname_bak compress"     #備份資料庫
#清除10天以前的歸檔日誌和備份檔案
su - dbname -c "sh /home/dbname/script/dbname_log_bak_del.sh"               #清理過期備份(引用上一篇文章中的指令碼)
sleep 90

#把昨天的dbname備份放到建立的/bak_script/dbname_tmp中
mkdir /bak_script/dbname_tmp
sleep 5
find /home/dbname/dbname_bak -name "*" -type f -mtime -1 -exec cp {} /bak_script/dbname_tmp \;  

#把dbname備份上傳到/DB2_BAK/dbname/dbname_bak
sleep 5
ftp -i -n -v << FTPIT
open 192.168.11.66
user ftp_name ftp_passwd
binary
cd /DB2_BAK/dbname/dbname_bak
lcd /bak_script/dbname_tmp
mput *
by
FTPIT

#刪除/bak_script/dbname_tmp
rm -rf /bak_script/dbname_tmp
################################################

#把昨天的dbname歸檔日誌放到/bak_script/dbname_tmp中
mkdir /bak_script/dbname_tmp
sleep 5
find /home/dbname/dbname_archive_log/db2inst3/dbname/NODE0000/C0000000 -name "*" -type f -mtime -1 -exec cp {} /bak_script/dbname_tmp \;

#把dbname歸檔日誌上傳到/DB2_BAK/dbname/dbname_archive_log
sleep 5
ftp -i -n -v << FTPIT
open 192.168.11.66
user ftp_name ftp_passwd
binary
cd /DB2_BAK/dbname/dbname_archive_log
lcd /bak_script/dbname_tmp
mput *
by
FTPIT

#清空/bak_script/dbname_tmp
rm -rf /bak_script/dbname_tmp