Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份相关的知识,希望对你有一定的参考价值。
#!/bin/bash #设置Oracle数据库运行账号及oracle的系统环境变量 export ORACLE_BASE=/data/oracle export ORACLE_HOME=$ORACLE_BASE/product/10g export ORACLE_SID=test export PATH=$ORACLE_HOME/bin:$HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib export LANG=zh_CN.UTF-8 export NLS_LANG=‘SIMPLIFIED CHINESE_CHINA.ZHS16GBK‘ #获取系统当前日期时间 date=`date +%Y%m%d%H%M%S` #设置删除60天之前的备份文件 days=60 #备份此用户下面的数据 orowner=oracle #备份数据库名称 bakuser=user #执行备份的密码 bakpass=pass #备份文件路径,需要提前创建好 bakdir=/data/backup/oracle/backup/ #备份数据库名称 bakdata=$orowner"_"$date.dump #备份执行时候生成的日志文件名称 baklog=$orowner"_"$date.log #最后保存的Oracle数据库备份文件 ordatabak=$orowner"_"$date.tar.gz #进入目录 cd $bakdir #执行备份 exp $bakuser/$bakpass grants=y owner=$bakuser file=$bakdir/$bakdata log=$bakdir/$baklog &> /dev/null #压缩备份文件和日志文件 tar -zcf $ordatabak $bakdata $baklog #删除备份文件 find $bakdir -type f -name "*.log" -exec rm {} \; #删除日志文件 find $bakdir -type f -name "*.dump" -exec rm {} \; #删除60天前的备份 find $bakdir -type f -name "*.tar.gz" -mtime +$days -exec rm -rf {} \;
本文出自 “追梦” 博客,请务必保留此出处http://sihua.blog.51cto.com/377227/1966422
以上是关于Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份的主要内容,如果未能解决你的问题,请参考以下文章