RAC环境下的RMAN 备份脚本一例

   这几天磁带机坏了,于是只能手工写RMAN的备份脚本。

  为了防止共享存储发生意外,所以RMAN的备份集没有放到 ASM共享存储中。而且RAC节点本地都有不小的剩余空间
,但是完全备份到一台节点中,空间又不够,于是想到把备份集分别放置在各自节点的本地硬盘中

   根据以前提供的脚本发现一个问题就是,在删除过期备份集中,只能删除一个节点的备份集,不能删除另外一个的

 如果你的备份集放置在共享存储中,没有任何问题。但是备份集放置在各自本地盘中,就会出现另外一个节点备份集 无法删除。
  1. ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE disk;
  2. run{
  3.  allocate channel d1 device type disk;
  4.  allocate channel d2 device type disk;
  5.  backup as compressed backupset DATABASE include CURRENT controlfile;
  6.  delete noprompt obsolete redundancy 1; 
  7.  release channel d1;
  8.  release channel d2;
  9. }


经过多次尝试,终于写好了正确的脚本,删除各自的过期备份,就是需要分配2个维护通道。



正确的脚本应该是:

点击(此处)折叠或打开

  1. run{
  2.  ALLOCATE CHANNEL ch00 TYPE DISK connect 'sys/oracle@rac1';
  3. ALLOCATE CHANNEL ch01 TYPE DISK connect 'sys/oracleV@rac2';
  4. backup filesperset 20 database format '/back/backup/full_%U_%s' plus archivelog format '/back/arch_%U_%s_%h' DELETE all INPUT ;
  5.  release channel ch00;
  6.  release channel ch01;
  7. }
  8. ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE disk connect 'sys/oracle@racj1';
  9. ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE disk connect 'sys/oracle@rac2';
  10. crosscheck backup device type disk;
  11. report obsolete device type disk;
  12.  delete noprompt obsolete redundancy 1 device type disk;
此脚本,必须保证 各个节点都需要有 /back/目录
这样一个备份脚本,只需要在一台节点中运行,即可完成备份和删除操作。

查看各节点备份集:
节点1:
nwdb1:/nwback/backup#ls -l
total 419874736
-rw-r-----    1 oracle   dba      69699559424 Jan 10 01:27 full_45otm6fh_1_1_19589
-rw-r-----    1 oracle   dba      68617748480 Jan 10 01:44 full_47otm7ft_1_1_19591
-rw-r-----    1 oracle   dba      8249638912 Jan 10 01:46 full_49otm8gq_1_1_19593
-rw-r-----    1 oracle   dba      68406444032 Jan 10 01:59 full_4aotm8ko_1_1_19594

节点2:
nwdb2:/nwback/backup#ls -l
total 262353984
-rw-r-----    1 oracle   dba      64775233536 Jan 10 01:28 full_46otm6f3_1_1_19590
-rw-r-----    1 oracle   dba      69548843008 Jan 10 01:48 full_48otm7h8_1_1_19592


因为主机以前是磁带库备份的,所以list backup 会产生很多磁带库备份的信息和磁盘的信息
如果只想查看磁盘的备份信息,只需要在后面加上 deice type disk;
同样,删除或者检查备份信息 都加上 deice type disk;
所以我在脚本中 加上了
crosscheck backup device type disk;
report obsolete device
type disk;









请使用浏览器的分享功能分享到微信等