ITPub博客

首页 > Linux操作系统 > Linux操作系统 > [backup]crontab调度rman命令文件数据库备份

[backup]crontab调度rman命令文件数据库备份

原创 Linux操作系统 作者:lk-2010 时间:2010-12-18 12:11:37 0 删除 编辑
一 创建RMAN备份脚本文件及SHELL文件调用RMAN脚本

[oracle@localhost ~]$ cat weekly_whole.rman
backup as copy incremental level 0 database tag 'weekly_backup';
[oracle@localhost ~]$ cat weekly_whole.sh
#! /bin/sh
rman target / @weekly_whole.rman log=weekly_whole.log
[oracle@localhost ~]$

二 添加crontab项,每周日调度备份
[oracle@localhost ~]$ crontab -e

编辑并保存后,显示用户oracle的crontab:
[oracle@localhost ~]$ crontab -l
# Whole db backup every sunday.
01 19 * * 7 /home/oracle/weekly_whole.sh
[oracle@localhost ~]$

三 使用同样方法,设置每日一级增量备份
[oracle@localhost ~]$ cat weekly_incr.rman
backup incremental level 1 database tag 'weekly_backup';
[oracle@localhost ~]$ cat weekly_incr.sh
#! /bin/sh
rman target / @weekly_incr.rman log weekly_incr.log
[oracle@localhost ~]$ crontab -l
# Whole db backup every sunday.
01 19 * * 7 /home/oracle/weekly_whole.sh

# Incremental db backup every weekday and saturday.
01 19 * * 1-6 /home/oracle/weekly_incr.sh
[oracle@localhost ~]$


updated on 2010-12-19
典型的环境变量缺失问题:在两个备份调度SHELL脚本中需要定义ORACLE_HOME和ORACLE_SID。缺失这两个变量,造成无法找到rman或rman备份出错。
增加环境变量定义后weekly_whole.sh如下:

[oracle@localhost ~]$ cat weekly_whole.sh
#! /bin/sh
ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1;export ORACLE_HOME
ORACLE_SID=orcl;export ORACLE_SID
${ORACLE_HOME}/bin/rman target / @weekly_whole.rman log weekly_whole.log
[oracle@localhost ~]$ cat weekly_incr.sh

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24131851/viewspace-682080/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-06-22

  • 博文量
    19
  • 访问量
    74558