暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

在Oracle中,如何查询RMAN的所有备份信息?

DB宝 2017-06-12
1842



Q
题目如下所示:

在Oracle中,如何查询RMAN的所有备份信息


     

A
答案如下所示:


可以通过视图V$BACKUP_SETV$BACKUP_FILESV$BACKUP_DATAFILEV$BACKUP_PIECEV$BACKUP_ARCHIVELOG_DETAILSV$BACKUP_SPFILEV$BACKUP_CONTROLFILE_DETAILS关联查询得到RMAN的所有备份信息,具体SQL语句如下所示:

SELECT A.RECID BS_KEY,

       C.RECID BP_KEY,

       CASE

         WHEN A.BACKUP_TYPE = 'L' THEN

          'Archived Redo Logs'

         WHEN A.BACKUP_TYPE = 'D' AND A.INCREMENTAL_LEVEL IS NULL THEN

          'Datafile Full Backup'

         WHEN A.BACKUP_TYPE = 'I' OR A.INCREMENTAL_LEVEL IS NOT NULL THEN

          'Incremental Backup'

       END BACKUP_TYPE,

       A.INCREMENTAL_LEVEL,

       AA.BS_BYTES,

       TO_CHAR(A.START_TIME, 'YYYY-MM-DD HH24:MI:SS') START_TIME,

       TO_CHAR(A.COMPLETION_TIME, 'YYYY-MM-DD HH24:MI:SS') END_TIME,

       A.ELAPSED_SECONDS,

       C.HANDLE PIECE_NAME,

       C.DEVICE_TYPE,

       C.TAG,

       AA.BS_STATUS,

       AA.BS_COMPRESSED,

       A.CONTROLFILE_INCLUDED,

       A.KEEP,

       A.KEEP_UNTIL,

       A.KEEP_OPTIONS,

       ------ data file -------- 

       B.FILE#,

       B.INCREMENTAL_LEVEL DF_INCREMENTAL_LEVEL,

       (SELECT NB.NAME FROM V$DATAFILE NB WHERE NB.FILE# = B.FILE#) DATAFILENAME,

       B.USED_CHANGE_TRACKING,

       B.CHECKPOINT_CHANGE# || '' DF_CHECKPOINT_CHANGE#,

       B.CHECKPOINT_TIME DF_CHECKPOINT_TIME,

       ------ archive log file --------

       D.THREAD#,

       D.SEQUENCE#,

       D.RESETLOGS_CHANGE#,

       D.FIRST_CHANGE#,

       D.FIRST_TIME,

       D.NEXT_CHANGE#,

       D.NEXT_TIME,

       ------ spfile --------

       E.MODIFICATION_TIME,

       E.DB_UNIQUE_NAME,

       ------ control file --------

       F.CREATION_TIME,

       F.CHECKPOINT_CHANGE# || '' CF_CHECKPOINT_CHANGE#,

       F.CHECKPOINT_TIME CF_CHECKPOINT_TIME,

       F.FILESIZE_DISPLAY

  FROM V$BACKUP_SET A

  LEFT OUTER JOIN V$BACKUP_FILES AA

    ON (AA.BS_KEY = A.RECID AND AA.FILE_TYPE = 'PIECE')

  LEFT OUTER JOIN V$BACKUP_DATAFILE B

    ON (A.SET_STAMP = B.SET_STAMP AND A.SET_COUNT = B.SET_COUNT)

  LEFT OUTER JOIN V$BACKUP_PIECE C

    ON (A.SET_STAMP = C.SET_STAMP AND A.SET_COUNT = C.SET_COUNT)

  LEFT OUTER JOIN V$BACKUP_ARCHIVELOG_DETAILS D

    ON (D.BTYPE_KEY = A.RECID)

  LEFT OUTER JOIN V$BACKUP_SPFILE E

    ON (A.SET_STAMP = E.SET_STAMP AND A.SET_COUNT = E.SET_COUNT)

  LEFT OUTER JOIN V$BACKUP_CONTROLFILE_DETAILS F

    ON (F.BTYPE_KEY = A.RECID)

 ORDER BY A.RECID, A.RECID, B.FILE#, D.THREAD#, D.SEQUENCE#;




DB笔试面试历史连接

http://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7w

About Me:小麦苗

 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

● 作者博客地址:http://blog.itpub.net/26736162/abstract/1/

 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

 版权所有,欢迎分享本文,转载请保留出处

 QQ:646634621  QQ群:230161599

● 题目解答若有不当之处,还望各位朋友批评指正,共同进步

长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。

最后修改时间:2020-01-10 21:12:19
文章转载自DB宝,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论