oracle数据本机自动备份

1、创建三个文件

exp.list  内容:oracle数据库的用户名和密码

name pwd

exp.log   主要用于存储在自动备份数据库时的日志信息

exp.sh

#!/bin/sh

#找到数据库的路径
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1 
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=orcl
export NLS_LANG=American_America.ZHS16GBK
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

#执行路径
cd /home/oracle/dbbackup
exptime=$(date +%Y-%m-%d_%H)
 
#读取创建的exp.list文件里的用户名及密码
cat exp.list | while read dbUser dbPasswd
do                                                                                        
        echo $dbUser
         exp $dbUser/$dbPasswd GRANTS=Y file=$dbUser"_"$exptime.dmp    #执行导出
        if [ "0" == $? ]
        then
                   tar -zcvf $dbUser"_"$exptime.dmp.tar.gz $dbUser"_"$exptime.dmp
                   rm $dbUser"_"$exptime.dmp
         fi
done
#rm file which is 6 days before
find . -mtime +6 -name "*.dmp.tar.gz" |xargs rm

2、本脚本加入定时任务里面

crontab  -e

30 23 * * 0 /home/oracle/dbbackup/exp.sh >> /home/oracle/dbbackup/exp.log 2>&1

意思是:每星期周日的晚上2330分执行/home/oracle/dbbackup下的exp.sh脚本,如果脚本执行报错会把错误信息放到exp.log下面。

转载于:https://www.cnblogs.com/windyWu/p/4728034.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值