1、root用户下创建备份路径:
mkdir /opt/backup
chown oralce:oinstall /opt/backup
2、oracle用户创建备份脚本路径:
mkdir /opt/app/oracle/bin
cd /opt/app/oracle/bin
3、创建备份脚本
vi backup.sh
#!/bin/sh
export ORACLE_BASE=/opt/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin:.
export ORACLE_SID=zd
#export NLS_LANG=american_america.UTF8
#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
CURDATE=$(date ‘+%Y%m%d%H%M%S‘)
backup_directory=/opt/backup/
data_file_prefix=zd
BACKUP_FILE=$backup_directory/zd$CURDATE.dmp
delete_prev_month_data_file()
{
premonth=$(date -d"5 days ago" ‘+%Y%m%d‘)
rm -rf $backup_directory/$data_file_prefix$premonth* || true
}
#exp zd/[email protected] FILE=$BACKUP_FILE tablespaces=‘zd‘
exp zdwebsite/[email protected] FILE=$BACKUP_FILE owner=‘zdweb‘
delete_prev_month_data_file
exit 0
4、定时任务
crontab -e
0 5 * * * /opt/app/oracle/bin/backup.sh
5、crontab说明:
第一个*表示分钟 每小时的第几分钟执行 0-59
第二个*表示小时 每天的第几个小时执行 0-23
第三个*表示日期 每月的第几天执行 1-31
第四个*表示月历 每年的第几个月执行 1-12
第五个*表示星期 每周的第几天执行 0-6
原文地址:http://blog.51cto.com/meiling/2068171
时间: 2024-10-28 22:08:21