Linux 定时备份oracle库的数据

思路:
1.使用crontab来实现定时任务
2.用shell脚本来执行exp备份指令

**************************************

配置好crontab
crontab -e 添加定期执行指令(并打印执行日志):

0 23 * * 5 /home/epacs/schemaBackup/oracle_backup.sh >> /home/epacs/schemaBackup/crontab.log 2>&1

 

**************************************

oracle_backup.sh 脚本内容:

 

#!/bin/bash

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

su - epacs << !

exp his/his1234@ora92a_A file=/home/epacs/schemaBackup/schema-$date.dmp log=/home/epacs/schemaBackup/schema-$date.log tables=ARCHIVETABLE,FILETABLE,HISARCHIVE,HISFILE,OBJECTIDTABLE,TYPETABLE

echo "export epacs oracle schema-$date.dmp successfully!"

gzip -9 /home/epacs/schemaBackup/schema-$date.dmp

echo "gzip schema-$date.dmp successfully!"

 


**************************************

TIP:
脚本中需要加入 “su - epacs << !” 这样就使用epacs用户来执行了(使用epacs的环境变量),否则crontab会报错,不执行脚本里的exp指令(报错内容:crontab exp: command not found)。

 

posted @ 2018-04-09 09:35  27薄荷糖  阅读(182)  评论(0编辑  收藏  举报