yiwai 发表于 2018-9-23 13:00:27

Oracle增量备份与恢复

全库备份脚本    run{  allocate channel c1 type disk;
  allocate channel c2 type disk;
  allocate channel c3 type disk;
  backup full tag
‘dbfull’ format ‘/u01/oradata/backup/full%u_%s_%p’ database  include current controlfile;
  sql
‘alter system archive log current’;  backup fileaperset 3 format
‘/u01/oradata/backup/arch%u_%s_%p’  archivelog all delete input; #
备份归档可选,可以单独定期备份
  >
  >
  >  }
零级备份脚本   run{  allocate channel c1 type disk;
  allocate channel c2 type disk;
  allocate channel c3 type disk;
  backup incremental level 0 tag
‘db0’ format ‘/u01/oradata/backup/db0%u_%s_%p’  database skip readonly;
  sql
‘alter system archive log current’;  backup fileaperset 3 format
‘/u01/oradata/backup/arch%u_%s_%p’  archivelog all delete input; #
备份归档可选,可以单独定期备份
  >
  >
  >  }
  一级备份脚本
    run{  allocate channel c1 type disk;
  allocate channel c2 type disk;
  allocate channel c3 type disk;
  backup incremental level 1 tag
‘db1’ format ‘/u01/oradata/backup/db1%u_%s_%p’  database skip readonly;
  sql
‘alter system archive log current’;  backup fileaperset 3 format
‘/u01/oradata/backup/arch%u_%s_%p’  archivelog all delete input; #
备份归档可选,可以单独定期备份
  >
  >
  >  }
  如果按照以上备份策略,则每天的所需要备份的数据量只有一天的改变量。而做恢复时最多要恢复当月的一个零级备份+三个一级备份+6个二级备份+当天的归档文件。如果不能接受这样的恢复时间,可以减少零级备份之间的时间间隔。在每次备份后,原则上在该备份点之前的归档日志就可以删除掉了,但是为了进一步的安全以及日后需要(如使用LOGMNR查找所需信息),建议有条件的话,归档日志保存到能够接受的时间点,可以保存在磁带等廉价存取设备上。

页: [1]
查看完整版本: Oracle增量备份与恢复