ITPub博客

首页 > 数据库 > Oracle > 设定RMAN 定时备份策略

设定RMAN 定时备份策略

原创 Oracle 作者:shenmingmingDBA 时间:2015-05-23 19:05:34 0 删除 编辑
创建周一周四的0级完全备份
创建二 三 五六日的1级增量备份
使用job 完成RMAN 备份工作
使用scheduler  来控制RMAN JOB的执行时间
创建rman 的零级备份脚本
 vi $ORACLE_BASH/admin/rman/inc0_backup.rmn
run

{ crosscheck backup;

crosscheck archivelog all;

delete noprompt expired backup device type disk;

delete noprompt obsolete device type disk;

backup incremental level 0 cumulative device type disk tag '%TAG' database;

backup device type disk tag '%TAG' archivelog all not backup delete all input;

}

创建rman 的1级增量备份脚本
 vi $ORACLE_BASH/admin/rman/inc1_backup.rmn
run{

crosscheck backup;

crosscheck archivelog all;

delete noprompt expired backup device type disk;

delete noprompt obsolete device type disk;

backup incremental level 1 cumulative device type disk tag '%TAG' database;

backup device type disk tag '%TAG' archivelog all not backup delete all input;

}

创建0级完全备份shell 脚本
vi $ORACLE_BASH/admin/rman/inc0_backup.sh
#!/bin/sh

export ORACLE_SID=ENMOEDU

export ORACLE_BASH=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASH/product/11.2.0/dbhome_1

export PATH=$ORACLE_HOME/bin:$PATH

$ORACLE_HOME/bin/rman target /

@$ORACLE_BASH/admin/$ORACLE_SID/rman/inc0_backup.rmn

log=$ORACLE_BASE/admin/$ORACLE_SID/rman/inc0_backup.log

exit


创建1级增量备份shell脚本

 vi $ORACLE_BASH/admin/rman/inc1_backup.sh
#!/bin/sh
export ORACLE_SID=ENMOEDU
export ORACLE_BASH=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASH/product/11.2.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
$ORACLE_HOME/bin/rman target /
@$ORACLE_BASH/admin/$ORACLE_SID/rman/inc1_backup.rmn
log=$ORACLE_BASE/admin/$ORACLE_SID/rman/inc1_backup.log
exit
                                                                                                                                                                   

~                                                                                                                                                                       

~                                                                                                                                                                       

创建信任对象         
begin
  dbms_scheduler.create_credential(
    credential_name =>'EXTERNAL_BACKUP_JOBS',
    username=>'oracle',
    password =>'oracle');
    end;
    /
创建1级备份的job
begin

    sys.dbms_scheduler.create_job(

    job_name=>'INC1_BACKUP',

    job_type=>'EXECUTABLE',

  job_action=>'/u01/app/oracle/admin/rman/inc1_backup.sh',

  repeat_interval=> 'FREQ=WEEKLY;BYDAY=TUE,WED,FRI,SAT,SUN;BYHOUR=2;BYMINUTE=0',

  start_date=>systimestamp at time zone 'ASIA/shanghai',

   enabled=>true,

   credential_name=>   'EXTERNAL_BACKUP_JOBS');

  END;

  /
执行0级完全备份的job
exec dbms_scheduler.run_job('INC0_BACKUP');
查看job 完成情况
select log_date,status,error#,actual_start_date,run_duration

    from dba_scheduler_job_run_details

    where owner= 'SYS'

    and job_name like'INC%_BACKUP'

    order by actual_start_date;


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

下一篇: RMAN 备份分类
请登录后发表评论 登录
全部评论

注册时间:2015-03-17

  • 博文量
    56
  • 访问量
    147930