背景

最近需要给一个项目做数据备份,由于数据量较小(一百多兆)就没考虑用rman之类的工具进行备份,直接用数据泵(expdp)进行导出,然后将数据本地存储。脚本写好后,通过crontab进行定时调用即可,问题就出在crontab上,手动执行脚本是可以正常运行,通过crontab就不行。

expdb

同步脚本逻辑比较简单,脚本如下:

#!/bin/bash
file=DB_$(date +%Y%m%d).dmp
echo "dump file ==>"$file
expdp system/password schemas=FND,FUSION directory=DB_DUMP_DIR dumpfile=$file
cd /u01/dump
zip $file.zip $file
find /u01/dump/ -name "*.zip" -mtime +5 -exec rm {} \;
find /u01/dump/ -name "*.dmp" -exec rm {} \;
scp $file.zip oracle@172.10.10.1:/home/oracle/db_db_backup
ssh oracle@172.10.10.1 find /home/oracle/db_db_backup -name "*.zip" -mtime +30 -exec rm {} \;

Read the rest of this entry