• oracle之三rman 维护


    rman 维护

    11.1 rman 使用和维护

    11.2 list 命令一览

    1)RMAN> list backup;
    2)RMAN> list backup of tablespace users;
    3)RMAN> list backup of datafile 2;
    4)RMAN> list backup of controlfile;
    5)RMAN> list backup of archivelog all;
    6)RMAN> list backup of archivelog until time ='sysdate -1';
    7)RMAN> list backupset 56;
    8)RMAN> list datafilecopy all;
    9)RMAN> list copy of tablespace users;
    10)RMAN> list copy of datafile 1;
    11)RMAN> list datafilecopy 67;
    12)RMAN> list copy of controlfile;
    13) RMAN> list expired backup;

    11.3 crosscheck:用于检测备份状态(AVAILABLE:可用;UNAVAILABLE:不可用;EXPIRED:过期(RMAN元数据还记录着,但OS上物理备份已经被删除了)。

    AVAILABLE/UNAVAILABLE的转换使用change命令

    RMAN> CHANGE BACKUPSET 1 UNAVAILABLE;

    是否EXPIRED要经过crosscheck命令才能看到。

    RMAN> crosscheck backup;
    RMAN> crosscheck copy;
    RMAN> crosscheck archivelog all; //核对ctrolfile中记录的archivelog是否存在。

    对于EXPIRED状态的产生,与crosscheck命令是密切相关的,RMAN通过crosscheck命令检查备份是否存在于备份介质上,如果不存在,则状态由AVAILABLE改为EXPIRED(duplex一个
    道理)。

    例:可以试一下将某文件的备份在os下重命名,再使用crosscheck进行检查,然后再复原其命名,观察AVAILABLE--EXPIRED--AVAILABLE过程

    RMAN>delete expired backup; //删除所有过期的备份。

    元数据有而实际备份没有,这叫expired,也可以反过来,让备份有而元数据没有。

    RMAN> change backuppiece 11 uncatalog; //11号备份片从RMAN元数据中删掉了,但物理备份xxx.bak还在。
    RMAN> catalog backuppiece '/u01/myrman/xxx.bak'; //将11号备份片又登记到RMAN元数据中了。

    *考点:DELETE EXPIRED命令不删除任何文件,它只更新RMAN存储库(元数据), DELETE OBSOLETE命令将删除文件并更新存储库。

    11.4 report 报告命令一览


    RMAN> REPORT schema; //查看目标库的物理结构
    RMAN> REPORT schema at time|scn|sequence; //at子句必须在catalog里使用(考点)
    RMAN> REPORT need backup; //根据当前备份保留策略,列出哪些数据文件需要备份。
    RMAN> REPORT NEED BACKUP DAYS n //使N天取代当前备份保留策略,列出哪些数据文件需要备份
    RMAN> REPORT obsolete; //根据备份冗余策略来判断,那些备份是陈旧的(obsolete)
    RMAN> REPORT NEED BACKUP incremental 3; //三天以来尚未进行备份的文件:
    RMAN> REPORT NEED BACKUP redundancy 2; //如果不具有两个或更多个备份则需要进行备份:
    RMAN> REPORT NEED BACKUP recovery window of 3 days; //需要进行备份以恢复到三天前的数据状态:
    RMAN> REPORT OBSOLETE REDUNDANCY 2; //如果需要的备份副本不多于两个,列出作废的恢复文件:
    RMAN> REPORT UNRECOVERABLE DATABASE; //备份文件中的表,采用了nologging属性,那么该数据文件是不能恢复的

    要理解区分这两组形式:

    1)REPORT NEED BACKUP 和 REPORT NEED BACKUP DAYS n

    REPORT NEED BACKUP //按照保留策略出报告
    REPORT NEED BACKUP DAYS n //按照N天出报告

    关于REPORT NEED BACKUP DAYS n,联机文档中描述是:

    “Displays files that require more than n days' worth of archived redo log files for recovery”。

    RMAN基于这样的考虑,要保证恢复n天内任意一时间点的数据,如果缺少n天前的备份及归档日志,就将它们列出来。

    2)REPORT OBSOLETE 和 REPORT UNRECOVERABLE DATABASE

    REPORT OBSOLETE 根据保留策略计算出那些备份集是废弃的。

    REPORT UNRECOVERABLE DATABASE

    如果一个文件做过备份,其后在这个文件上创建的表采用了nologging属性,表插入数据没有记日志,那么是不能恢复的,这个表所在的文件就是report unrecoverable database要列出来的文件


    11.5 delete 删除备份命令一览

    RMAN> delete backup of datafile 2;
    RMAN> delete backup of tablespace system;
    RMAN> delete backupset ;
    RMAN> delete backupset 30,32;
    RMAN> delete backup of controlfile;
    RMAN> delete noprompt backup of controlfile; //删除noprompt 不提示
    RMAN> delete datafilecopy all;
    RMAN> delete copy of datafile 10;
    RMAN> delete copy of tablespace users;
    RMAN> delete expired backup; //删除过期的备份
    RMAN> delete expired archivelog all; //删除过期的归档, 更新v$archived_log视图
    RMAN> delete expired copy;
    RMAN> delete obsolete; //删除陈旧的备份
    RMAN> delete noprompt obsolete; //删除不加提示

  • 相关阅读:
    Kibana详细入门教程
    Python爬取食品商务网蔬菜价格数据,看看蔬菜最近的价格情况
    用Python爬取某蔬菜网的行情,分析底哪个地区的蔬菜便宜
    ES启动失败;java.lang.IllegalStateException: No factory method found for class org.apache.logging.log4j.c
    ELK 5.0 组件后台启动
    linux中/etc/security/limits.conf配置文件说明
    redis面试常见问题
    单线程的Redis为什么能支持10w+的QPS?
    Redis大Key优化
    redis中查找大key方法汇总
  • 原文地址:https://www.cnblogs.com/jinxf/p/9171339.html
Copyright © 2020-2023  润新知