一个RMAN的脚本

来源:互联网 发布:人工智能产业链股票 编辑:程序博客网 时间:2024/04/28 06:24

环境变量如下:

 

RMAN> show all;

RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 7;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'h:/orabak/%F';
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   'h:/orabak/%d_db_%u';
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'H:/ORABAK/SNCFMYTEST.ORA';

 

增量level=0,1,2类似,脚本理只要改改就行了

这里拿1来做测试的

设置一个磁带的(未测试过)

RUN {
          ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';
          BACKUP INCREMENTAL LEVEL=1 SKIP INACCESSIBLE FILESPERSET 10 DATABASE;
          sql 'alter system archive log current';
          BACKUP   filesperset 20 ARCHIVELOG ALL DELETE INPUT;
          BACKUP  CURRENT CONTROLFILE;
          RELEASE CHANNEL ch00;
        }

非磁带的默认算了(测试正常)

RUN {
          BACKUP INCREMENTAL LEVEL=1 SKIP INACCESSIBLE FILESPERSET 10 DATABASE;
          sql 'alter system archive log current';
          BACKUP   filesperset 20 ARCHIVELOG ALL DELETE INPUT;
          BACKUP  CURRENT CONTROLFILE;
        }

 

SKIP INACCESSIBLE:表示跳过不可读的文件。

SKIP OFFLINE:跳过offline的数据文件。
SKIP READONLY:跳过那些所在表空间为read-only的数据文件。

sql 'alter system archive log current';这句应该是没必要,通过plus archivelog方式备份时,rman好像会自动对当前的archivelog进行归档所以写法也可以如下:

RUN {
          BACKUP INCREMENTAL LEVEL=1 SKIP INACCESSIBLE FILESPERSET 10 DATABASE PLUS  

          ARCHIVELOG  FILESPERSET 20  DELETE ALL INPUT;
        } 

 

原创粉丝点击