ORACLE 查看RMAN的备份信息总结

关于Oracle数据库的RMAN备份,除了邮件外,是否能通过其它方式检查RMAN备份的成功与失败呢?其实我们可以通过下面SQL脚本来检查某个时间段备份失败的记录:

SELECT * FROM V$RMAN_STATUS 
WHERE START_TIME >= TO_DATE(&START_TIME,‘YYYY-MM-DD HH24:MI:SS‘)

  AND END_TIME   <= TO_DATE(&END_TIME  ,‘YYYY-MM-DD HH24:MI:SS‘)

  AND OPERATION =‘BACKUP‘

  AND STATUS !=‘COMPLETED‘ 

  AND STATUS NOT LIKE ‘RUNNING%‘

查看备份成功的历史记录:

SELECT * FROM V$RMAN_STATUS 
WHERE START_TIME >= TO_DATE(&START_TIME,‘YYYY-MM-DD HH24:MI:SS‘)

  AND END_TIME   <= TO_DATE(&END_TIME  ,‘YYYY-MM-DD HH24:MI:SS‘)

  AND OPERATION =‘BACKUP‘

  AND STATUS =‘COMPLETED‘

其中STATUS主要有RUNNING、RUNNING WITH WARNINGS、RUNNING WITH ERRORS、COMPLETED、COMPLETED WITH WARNINGS、COMPLETED WITH ERRORS、FAILED等几种状态。另外,如果你在命令窗口输入

[[email protected] ~]$ date
Tue Jul 19 10:52:02 CST 2016

[[email protected] ~]$ rman target /

 

Recovery Manager: Release 10.2.0.5.0 - Production on Tue Jul 19 10:52:13 2016

 

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

 

connected to target database: SCM2 (DBID=3990839260)

 

RMAN> 

在V$RMAN_STATUS里面,你会看到插入了一条记录STATUS为RUNNING状态

SQL> COL ROW_TYPE FOR A10;
SQL> COL OPERATION FOR A10;

SQL> COL COMMAND_ID FOR A20;

SQL> COL STATUS FOR A30;

SQL> COL OBJECT_TYPE FOR A16;

SQL> SELECT ROW_TYPE, COMMAND_ID, OPERATION, STATUS,OBJECT_TYPE 

  2  FROM V$RMAN_STATUS 

  3  WHERE START_TIME >= TO_DATE(‘2016-07-19 10:52:00‘, ‘YYYY-MM-DD HH24:MI:SS‘);

 

ROW_TYPE   COMMAND_ID           OPERATION  STATUS              OBJECT_TYPE

---------- -------------------- ---------- ----------------- ----------------

SESSION    2016-07-19T10:52:13  RMAN       RUNNING

此时如果在RMAN中随意执行一个错误命令,如下所示

[[email protected] ~]$ rman target /
 

Recovery Manager: Release 10.2.0.5.0 - Production on Tue Jul 19 10:52:13 2016

 

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

 

connected to target database: SCM2 (DBID=3990839260)

 

RMAN> /

 

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-00558: error encountered while parsing input commands

RMAN-01006: error signalled during parse

RMAN-02001: unrecognized punctuation symbol "/"

SQL> COL ROW_TYPE FOR A10;
SQL> COL OPERATION FOR A10;

SQL> COL COMMAND_ID FOR A20;

SQL> COL STATUS FOR A30;

SQL> COL OBJECT_TYPE FOR A16;

SQL> SELECT ROW_TYPE, COMMAND_ID, OPERATION, STATUS,OBJECT_TYPE 

  2  FROM V$RMAN_STATUS 

  3  WHERE START_TIME >= TO_DATE(‘2016-07-19 10:52:00‘, ‘YYYY-MM-DD HH24:MI:SS‘);

 

ROW_TYPE   COMMAND_ID           OPERATION  STATUS                  OBJECT_TYPE

---------- -------------------- ---------- --------------------- ----------------

SESSION    2016-07-19T10:52:13  RMAN       RUNNING WITH ERRORS

在RMAN中退出,此时你会看到STAUS记录从"RUNNING WITH ERRORS"变成了"COMPLETED WITH ERRORS"

也就是说,你可以在这个视图里面查看在RMAN里面执行的一些操作,例如删除归档日志等,另外,如果要查看RMAN的输出,可以查看V$RMAN_OUTPUT,V$RMAN_OUTPUT 视图记录了RMAN生成的信息,这是在内存中额视图,不会记录到控制文件上。最多有37278条记录.

当然也可以从V$RMAN_BACKUP_JOB_DETAILS中查看RMAN备份更详细的信息。

SELECT START_TIME,
      END_TIME,

      OUTPUT_DEVICE_TYPE,

      STATUS,

      ELAPSED_SECONDS,

      COMPRESSION_RATIO,

      INPUT_BYTES_DISPLAY,

      OUTPUT_BYTES_DISPLAY

FROM V$RMAN_BACKUP_JOB_DETAILS

ORDER BY START_TIME DESC ;

另外,如果我们需要查看RMAN备份的一些详细记录,在惜分飞的通过sql查询rman备份信息博客里面分享了下面一些经典的SQL语句。收录在此。

查看所有备份集详细信息:

SELECT A.RECID "BACKUP SET",
       A.SET_STAMP,

        DECODE (B.INCREMENTAL_LEVEL,

                ‘‘, DECODE (BACKUP_TYPE, ‘L‘, ‘Archivelog‘, ‘Full‘),

                1, ‘Incr-1级‘,

                0, ‘Incr-0级‘,

                B.INCREMENTAL_LEVEL)

           "Type LV",

        B.CONTROLFILE_INCLUDED "包含CTL",

        DECODE (A.STATUS,

                ‘A‘, ‘AVAILABLE‘,

                ‘D‘, ‘DELETED‘,

                ‘X‘, ‘EXPIRED‘,

                ‘ERROR‘)

           "STATUS",

        A.DEVICE_TYPE "Device Type",

        A.START_TIME "Start Time",

        A.COMPLETION_TIME "Completion Time",

        A.ELAPSED_SECONDS "Elapsed Seconds",

        A.BYTES/1024/1024/1024 "Size(G)",

        A.COMPRESSED,

        A.TAG "Tag",

        A.HANDLE "Path"

   FROM GV$BACKUP_PIECE A, GV$BACKUP_SET B

  WHERE A.SET_STAMP = B.SET_STAMP AND A.DELETED = ‘NO‘

RDER BY A.COMPLETION_TIME DESC;

查找某个备份集中包含数据文件

SELECT DISTINCT c.file#,A.SET_STAMP, D.NAME, C.CHECKPOINT_CHANGE#, C.CHECKPOINT_TIME
FROM V$BACKUP_DATAFILE C, V$BACKUP_PIECE A, V$DATAFILE D

WHERE A.SET_STAMP = C.SET_STAMP

    AND D.FILE# = C.FILE#

    AND A.DELETED=‘NO‘

    AND c.set_stamp=&set_stamp

 ORDER BY C.FILE#;

查询某个备份集中控制文件

SELECT DISTINCT A.SET_STAMP,
                D.NAME,

                C.CHECKPOINT_CHANGE#,

                C.CHECKPOINT_TIME

 FROM V$BACKUP_DATAFILE C, V$BACKUP_PIECE A, V$CONTROLFILE D

 WHERE A.SET_STAMP = C.SET_STAMP

   AND C.FILE# = 0

   AND A.DELETED = ‘NO‘

   AND C.SET_STAMP = &SET_STAMP;

查看某个备份集中归档日志:

SELECT DISTINCT B.SET_STAMP,
                B.THREAD#,

                B.SEQUENCE#,

                B.FIRST_TIME,

                B.FIRST_CHANGE#,

                B.NEXT_TIME,

                B.NEXT_CHANGE#

 FROM V$BACKUP_REDOLOG B, V$BACKUP_PIECE A

 WHERE A.SET_STAMP = B.SET_STAMP

   AND A.DELETED = ‘NO‘

   AND B.SET_STAMP = &SET_STAMP

 ORDER BY THREAD#, SEQUENCE#;

查看某个备份集SPFILE

SELECT DISTINCT A.SET_STAMP, B.COMPLETION_TIME, HANDLE
FROM V$BACKUP_SPFILE B, V$BACKUP_PIECE A

 WHERE A.SET_STAMP = B.SET_STAMP

   AND A.DELETED = ‘NO‘

   AND B.SET_STAMP = &SET_STAMP;

查看RMAN的配置信息

SELECT NAME,VALUE FROM V$RMAN_CONFIGURATION;

参考资料:

http://www.xifenfei.com/2012/02/%E9%80%9A%E8%BF%87sql%E6%9F%A5%E8%AF%A2rman%E5%A4%87%E4%BB%BD%E4%BF%A1%E6%81%AF.html

时间: 2024-08-29 22:11:59

ORACLE 查看RMAN的备份信息总结的相关文章

ORACLE查看日志、版本信息、执行计划语句

1.查看数据库的版本信息 select * from v$version; 2.查看数据库的redo日志文件目录 select * from v$logfile; 3.常看数据库alter日志文件目录(记录Oracle日常活动的) show parameter background_dump_dest; 4.在plsql/Developer当中查看执行计划 当sql执行完成之后,按下F5键即可查看分析执行计划.

查询rman备份信息经常使用指令

查询rman备份信息经常使用指令 ----登陆到rman $rman target / ----以精简的格式查看备份信息 RMAN> list backup of database summary; List of Backups =============== Key     TY LV S Device Type Completion Time#Pieces #Copies Compressed Tag 备份片号 类型 备份级别 设备类型 完毕时间 片数 镜像数 是否压缩 标签 ------

查询rman备份信息常用指令

查询rman备份信息常用指令 ----登陆到rman $rman target / ----以精简的格式查看备份信息 RMAN> list backup of database summary; List of Backups =============== Key     TY LV S Device Type Completion Time#Pieces #Copies Compressed Tag 备份片号 类型 备份级别 设备类型 完成时间 片数 镜像数 是否压缩 标签 -------

[转]Oracle DB 使用RMAN创建备份2

归档备份:概念 归档备份:概念 如果需要在指定时间内保留联机备份,RMAN 通常会假定用户可能需要在自执行该备份以来到现在之间的任意时间执行时间点恢复.为了满足这一要求,RMAN 会在此时段内保留归档日志.但是,可能仅需要在指定的时间(如两年)内保留特定备份(并使其保持一致和可恢复).用户不打算恢复到自执行该备份以后的某一时间点,只是希望能够正好恢复到执行该备份的确切时间.此外,用户还需要维护保留策略以使备份区井然有序,因此无法使备份恢复到两年前.为了满足保留数据的商业或法律要求,通常需要这么做

Oracle之RMAN备份及还原

RMAN可以进行增量备份:数据库,表空间,数据文件 只有使用过的block可以被备份成backup set 表空间与数据文件对应关系:dba_data_files / v$datafile_header 在noarchivelog模式下,可以使用RMAN备份read-only和offline的表空间 ORACLE RMAN停机备份: 备份 RMAN连接上ORACLE,WINDOWS下在命令模式下 RMAN TARGET / 连接本地数据库用的是本地认证模式.RMAN连接数据库必须在dedicat

利用SHELL脚本来验证Oracle数据库RMAN备份集的有效性

利用SHELL脚本来验证Oracle数据库RMAN备份集的有效性 作者:赵全文  网名:guestart 我们生产环境的Oracle数据库都做了RMAN备份,是采用了一周的RMAN备份保留策略:除了使用RMAN备份以外,我们还使用了爱数(Eisoo)备份软件来进行备份,可以说是做到了有备无患.可是,如果有一天,Oracle数据库由于主机层面硬件原因或是数据库层面的原因不能对外提供高可用服务的时候,假设数据丢了一大部分,我们只有用RMAN备份来进行恢复,再如果发现,RMAN备份失效了,那就往地缝里

Oracle 12c RMAN备份文档

创建备份目录,查看剩余空间 [[email protected] ~]$ df -h df: '/home/oratest/.gvfs': Permission denied Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 450G 27G 423G 6% / devtmpfs 5.8G 0 5.8G 0% /dev tmpfs 5.8G 2.9G 3.0G 50% /dev/shm tmpfs 5.8G 34

oracle 11g ocp 笔记(15)--使用rman进行备份

一.备份的术语 关闭与打开(冷备和热备 一致性备份和非一致性备份) 打开的备份只能是归档模式下 全部与局部  局部备份只能是归档模式下. 完整备份和增量备份   增量备份分为 累计增量备份和差异增量备份. rman 能备份的文件有:数据文件.归档文件.控制文件.spfile,备份集片 不能备份的文件有:redo log 临时文件.口令文件.pfile,oracle net文件. rman可以分三类 备份集.压缩备份集和影像副本.    备份集是增量或者是完整的,镜像只能是完整的, 备份集 存储库

oracle查看当前用户信息

一.查看当前用户信息: 1.查看当前用户拥有的角色权限信息:select * from role_sys_privs; 2.查看当前用户的详细信息:select * from user_users; 3.查看当前用户的角色信息:select * from user_role_privs; 总结:ORACLE中数据字典视图分为3大类,用前缀区别,分别为:USER,ALL 和 DBA, 许多数据字典视图包含相似的信息. USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息. ALL_*: