分类: 服务器与存储
2012-05-25 18:19:46
NBU中如果使用的是带库备份,则直接使某个卷失效即可,可是如果是将备份文件存放在磁盘上,又该如何使他失效呢?请往下看………
当前NBU系统中,存在一个基于磁盘的备份策略:Disk_OraBak
此备份目的地的绝对路径是/opt/bak,如图所示:
即使你将/opt/bak下面的文件全部删除了,但是在NBU数据库中还存有这些备份信息的。可以使用bpcatlist命令查看nbu数据库中的备份信息,如图所示:
可以看到,备份策略使用的是基于磁盘的备份策略。那么如何操作使它失效呢?命令依旧使用bpexpdate,只不过后面跟的不是media_id,而是backup_id。以上bpcatlist命令的输出中的第一列就是每个备份作业的backupid,直接回车就可以看到bpexpdate的详细用法:
这里将备份id为db01_1303360014的备份信息删除,删除之前/opt/bak目录下面一共75个文件:
执行bpexpdata命令后,再统计下/opt/bak下面的文件数:
文件数比以前的少了4个,这就说明在失效同时也会将备份文件一并给删除了。
对于要删除好多个备份文件,在Linux下面可以采取以下方法:
1、将所有的备份ID写入一个文件里,每行一个。这里为bid文件,里面包含了所有的备份ID。
2、执行以下命令,进行自动化清除操作,不需人工干预,否则你每次都需要输入y进行确认操作,很繁琐。
执行完成后,再次使用bpcatlist命令查看nbu数据库信息,就会发现对应的备份信息已经全部删除了。而/opt/bak下面的文件也会被全部清空。