Rman controlfiles

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type Script SQL*Plus de diagnostic
Vues source v$backup_set, v$backup_piece
Voir aussi Rman backup pieces · RMAN

Rman controlfiles liste, parmi les backup pieces RMAN, uniquement celles qui contiennent une sauvegarde automatique du control file (CONTROLFILE AUTOBACKUP, voir Rman configuration setup 9i). Utile pour vérifier rapidement qu'une sauvegarde du control file existe bien et savoir où la retrouver en cas de restauration sans recovery catalog.

Script

SET TERMOUT OFF
COLUMN current_instance NEW_VALUE current_instance NOPRINT
SELECT RPAD(instance_name, 17) current_instance FROM v$instance;
SET TERMOUT ON

PROMPT
PROMPT +------------------------------------------------------------------------+
PROMPT | Rapport   : Control files sauvegardés (RMAN)                           |
PROMPT | Instance  : &current_instance                                          |
PROMPT | Note      : Sauvegardes automatiques de control file disponibles       |
PROMPT |             (et expirées) parmi tous les jeux de sauvegarde.           |
PROMPT +------------------------------------------------------------------------+

SET ECHO      OFF
SET FEEDBACK  6
SET HEADING   ON
SET LINESIZE  180
SET PAGESIZE  50000
SET VERIFY    OFF

CLEAR COLUMNS
CLEAR BREAKS
CLEAR COMPUTES

COLUMN bs_key                FORMAT 9999 HEADING 'BS|Clé'
COLUMN piece#                FORMAT 99999 HEADING 'Pièce|#'
COLUMN copy#                 FORMAT 9999 HEADING 'Copie|#'
COLUMN bp_key                FORMAT 9999 HEADING 'BP|Clé'
COLUMN controlfile_included  FORMAT a11 HEADING 'Control-|file inclus ?'
COLUMN completion_time       FORMAT a20 HEADING 'Fin'
COLUMN status                FORMAT a9  HEADING 'Statut'
COLUMN handle                FORMAT a75 HEADING 'Handle'

BREAK ON bs_key

SELECT
    bs.recid                                                bs_key
  , bp.piece#                                                piece#
  , bp.copy#                                                 copy#
  , bp.recid                                                 bp_key
  , DECODE(bs.controlfile_included, 'NO', '-', bs.controlfile_included) controlfile_included
  , TO_CHAR(bs.completion_time, 'mm/dd/yyyy HH24:MI:SS')     completion_time
  , DECODE(status, 'A', 'Available', 'D', 'Deleted', 'X', 'Expired') status
  , handle                                                   handle
FROM
    v$backup_set bs JOIN v$backup_piece bp USING (set_stamp, set_count)
WHERE
      bp.status IN ('A', 'X')
  AND bs.controlfile_included != 'NO'
ORDER BY
    bs.recid
  , piece#;

Voir aussi