在suse下添加oracle 11g自动备份数据库定时任务

1、编写数据库备份脚本,将数据库导出为dmp文件

 

ORACLE_HOME=/oracle/product/11gR2/db

export ORACLE_HOME

ORACLE_SID=office

export ORACLE_SID

PATH=$ORACLE_HOME/bin:/usr/local/bin:$PATH

export PATH

 

设置ORACLE_HOME、ORACLE_SID以及PATH变量,否则脚本在crontab中执行报错。

 

 

D1=`date '+%Y-%m-%d-%H-%M.dmp'`

D2=`date '+%Y-%m-%d-%H-%M.log`

exp username/password@sid file=/oracle_dmp/backup/$D1, log=/oracle_log/backup/$D2, compress=n buffer=10240 consistent=y direct=n constraints=y feedback=10000  grants=y record=y indexes=y triggers=y rows=y

 

设置oracle导出文件的文件名,以日期作为文件名,同时还导出日志文件。

将上面的脚本保存到/home/oracle/oracle_auto_backup.sh文件中。

 

2、在oracle用户下添加crontab任务

crontab -e

在编辑器中输入

50  23 *  *  *  /home/oracle/oracle_auto_backup.sh

设置定时任务的执行频率,每天晚上11点50执行该脚本。

 

然后保存退出。

 

3、如果定时任务没有执行,可以查看/var/mail/oracle 文件,找出错误原因。

你可能感兴趣的:(oracle 11g)