在linnux下,配置自动备份oacle

时间:2021-09-09 15:34:22

以oracle身份登录到linux,在oracle home目录下创建目录 shell

$ mkdir shell

创建自动备份脚本

$ cd shell

$ touch expdp.sh

$ chmod a+x expdp.sh

$ vi expdp.sh

自动备份脚本范例如下:

#/bin/sh

sid=system/sys@192.168.6.60/SID

schemas_list=db_name

today=`date +%Y%m%d`

dmpfile=db$today.dmp

backup_dir=/opt/oracle_data_backup

echo start exp $dmpfile ...

expdp $sid DUMPFILE=$dmpfile DIRECTORY=DATA_PUMP_DIR SCHEMAS=$schemas_list

mv /opt/oracle/admin/DEV/dpdump/$dmpfile $backup_dir

手动执行脚本,确认脚本能正确执行。

$ ./expdp.sh

再以root身份登录到linux,设置Crontab。

$ crontab -e

编辑文本内容如下:
表示每天晚上23点执行自动备份脚本, 详细Crontab 应用教程请自行搜索。

0 23 * * * sh -c "su - oracle -c /home/oracle/shell/expdp.sh"

重新启动Crontab,使配置生效。

$ service crond restart