oracle数据库shell备份脚本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle数据库shell备份脚本相关的知识,希望对你有一定的参考价值。

1、root用户下创建备份路径:

mkdir /opt/backup
chown oralce:oinstall /opt/backup

2、oracle用户创建备份脚本路径:

mkdir /opt/app/oracle/bin
cd /opt/app/oracle/bin

3、创建备份脚本

vi backup.sh
#!/bin/sh
export ORACLE_BASE=/opt/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin:.
export ORACLE_SID=zd
#export NLS_LANG=american_america.UTF8
#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

CURDATE=$(date ‘+%Y%m%d%H%M%S‘)

backup_directory=/opt/backup/
data_file_prefix=zd
BACKUP_FILE=$backup_directory/zd$CURDATE.dmp

delete_prev_month_data_file()
{
    premonth=$(date -d"5 days ago" ‘+%Y%m%d‘)
    rm -rf $backup_directory/$data_file_prefix$premonth* || true
}

#exp zd/[email protected] FILE=$BACKUP_FILE tablespaces=‘zd‘
exp zdwebsite/[email protected] FILE=$BACKUP_FILE owner=‘zdweb‘
delete_prev_month_data_file
exit 0

4、定时任务

crontab -e
0 5 * * * /opt/app/oracle/bin/backup.sh

5、crontab说明:
第一个*表示分钟 每小时的第几分钟执行 0-59

第二个*表示小时 每天的第几个小时执行 0-23

第三个*表示日期 每月的第几天执行 1-31

第四个*表示月历 每年的第几个月执行 1-12

第五个*表示星期 每周的第几天执行 0-6

以上是关于oracle数据库shell备份脚本的主要内容,如果未能解决你的问题,请参考以下文章

shell判断oracle主备数据库备份脚本

利用SHELL脚本来验证Oracle数据库RMAN备份集的有效性

利用SHELL脚本来验证Oracle数据库RMAN备份集的有效性

rman备份脚本shell版

rman备份脚本shell版

通过shell脚本实现对oracle RMAN备份集压缩并异地备份