Welcome 微信登录

首页 / 数据库 / MySQL / Oracle生产环境RMAN备份脚本

题记:这里分享一下我们Oracle的备份脚本,这些脚本均在生产库运行,正确无误!环境:SUSE Linux 10sp2 + Oracle 11gR1说明:小型库一般都是每周做一次全备,大型库每周也做一次全备外,周三做1级增量备份,然后每天晚上都做一次2级增量备份,归档日志每天分不同时段定时备份!--------------------------------------分割线 --------------------------------------推荐阅读:RMAN 配置归档日志删除策略 http://www.linuxidc.com/Linux/2013-11/92670.htmOracle基础教程之通过RMAN复制数据库 http://www.linuxidc.com/Linux/2013-07/87072.htmRMAN备份策略制定参考内容 http://www.linuxidc.com/Linux/2013-03/81695.htmRMAN备份学习笔记 http://www.linuxidc.com/Linux/2013-03/81892.htmOracle数据库备份加密 RMAN加密 http://www.linuxidc.com/Linux/2013-03/80729.htm--------------------------------------分割线 --------------------------------------小型库全备:
 run {
 # Hot database level 0 whole backup
 allocate channel t1 type disk;
 backup
     incremental level 0
     skip inaccessible
     format "/backup/osedb_osedb01/data/back_%s_%p_%T_%d"
 #AS COMPRESSED backupset
 database plus archivelog
 format "/backup/osedb_osedb01/arch/arclogback_%s_%p_%t_%d"
 delete input;
 delete obsolete;
 release CHANNEL t1 ;
 } 大库全备:
 oracle@subsdb1:~/bin/incre_bakup_cmd> cat backup_db_level0.cmd
 run {
 # Hot database level 0 whole backup
 allocate channel t1 type disk maxpiecesize=50G;
 allocate channel t2 type disk maxpiecesize=50G;
 allocate channel t3 type disk maxpiecesize=50G;
 backup as compressed backupset
     incremental level 0 tag "subsdb_level0"
     skip inaccessible
     format "/backup/subsdb_subsdb1/data/bak_%d_%T_%s_%p_db_level0"
 #AS COMPRESSED backupset
 database
 plus archivelog
 format "/backup/subsdb_subsdb1/arch/arclogback_%s_%p_%t_%d"
 delete input;
 backup current controlfile format "/backup/subsdb_subsdb1/data/bak_%d_%T_%s_ctl.ctl";
 release channel t1;
 release channel t2;
 release channel t3;
 delete noprompt obsolete;
 }1级增量备份:
 oracle@subsdb1:~/bin/incre_bakup_cmd> cat backup_db_level1.cmd
 run {
 # Hot database level 1 whole backup
 allocate channel t1 type disk maxpiecesize=50G;
 allocate channel t2 type disk maxpiecesize=50G;
 allocate channel t3 type disk maxpiecesize=50G;
 backup as compressed backupset
     incremental level 1 tag "subsdb_level1"
     skip inaccessible
     format "/backup/subsdb_subsdb1/data/bak_%d_%T_%s_%p_db_level1"
 #AS COMPRESSED backupset
 database plus archivelog
 format "/backup/subsdb_subsdb1/arch/arclogback_%s_%p_%t_%d"
 delete input;
 backup current controlfile format "/backup/subsdb_subsdb1/data/bak_%d_%T_%s_ctl.ctl";
 release channel t1;
 release channel t2;
 release channel t3;
 delete noprompt obsolete;
 }2级增量备份:
 oracle@subsdb1:~/bin/incre_bakup_cmd> cat backup_db_level2.cmd
 run {
 # Hot database level 2 whole backup
 allocate channel t1 type disk maxpiecesize=50G;
 allocate channel t2 type disk maxpiecesize=50G;
 allocate channel t3 type disk maxpiecesize=50G;
 backup as compressed backupset
     incremental level 2 tag "subsdb_level2"
     skip inaccessible
     format "/backup/subsdb_subsdb1/data/bak_%d_%T_%s_%p_db_level2"
 #AS COMPRESSED backupset
 database
 plus archivelog
 format "/backup/subsdb_subsdb1/arch/arclogback_%s_%p_%t_%d"
 delete input;
 backup current controlfile format "/backup/subsdb_subsdb1/data/bak_%d_%T_%s_ctl.ctl";
 release channel t1;
 release channel t2;
 release channel t3;
 delete noprompt obsolete;
 }
归档日志备份:
 cat backup_arch.cmd
 run {  allocate channel t1 type disk;
 backup
   skip inaccessible
   format "/backup/osedb_osedb01/arch/arclogback_%s_%p_%t_%d"
   #AS COMPRESSED backupset
    (archivelog all delete input);
    delete obsolete;
 release CHANNEL t1 ;
 }更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址