rman
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
rman [2015/12/16 13:53] – z0hpvk | rman [2025/03/08 22:24] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
==== RMAN Parameters ==== | ==== RMAN Parameters ==== | ||
- | < | + | < |
+ | |||
+ | CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; | ||
CONFIGURE CONTROLFILE AUTOBACKUP ON; | CONFIGURE CONTROLFILE AUTOBACKUP ON; | ||
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/ | CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/ | ||
Line 9: | Line 11: | ||
==== RMAN Commands ==== | ==== RMAN Commands ==== | ||
- | DELETE ARCHIVELOG ALL;\\ | + | < |
- | DELETE ARCHIVELOG ALL COMPLETED BEFORE ' | + | BACKUP AS COMPRESSED BACKUPSET DATABASE FORMAT '/ |
+ | BACKUP ARCHIVELOG FROM SEQUENCE 7500; | ||
+ | BACKUP ARCHIVELOG FROM SEQUENCE 7500 UNTIL SEQUENCE 8000 FORMAT '/ | ||
+ | BACKUP ARCHIVELOG FROM TIME ' | ||
+ | |||
+ | DELETE ARCHIVELOG ALL; | ||
+ | DELETE ARCHIVELOG ALL COMPLETED BEFORE ' | ||
+ | |||
+ | LIST BACKUP OF ARCHIVELOG SEQUENCE xxxxx; | ||
+ | LIST BACKUP OF ARCHIVELOG FROM SEQUENCE xxxxx; | ||
+ | LIST BACKUP OF ARCHIVELOG SEQUENCE BETWEEN xxxxx AND xxxxx; | ||
+ | |||
+ | CATALOG START WITH '< | ||
+ | |||
+ | -- Data files showing in wrong location in control file | ||
+ | CATALOG START WITH '< | ||
+ | SWITCH DATABASE TO COPY; | ||
+ | RECOVER DATABASE; | ||
+ | </ | ||
+ | ==== Fast Recovery Area ==== | ||
+ | |||
+ | <code SQL> | ||
+ | set linesize 120 | ||
+ | col name format a20 | ||
+ | select name, space_limit/ | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | select * from V$RECOVERY_AREA_USAGE; | ||
+ | </ | ||
+ | |||
+ | ==== Incremental Recovery ==== | ||
+ | This procedure is useful if a standby database has missing archive logs. \\ | ||
+ | < | ||
+ | COL CURRENT_SCN FORMAT 999999999999999 | ||
+ | SELECT CURRENT_SCN FROM V$DATABASE; | ||
+ | SELECT MIN(FHSCN) FROM X$KCVFH; | ||
+ | </ | ||
+ | Example lowest number is 123456 | ||
+ | < | ||
+ | RMAN> BACKUP INCREMENTAL FROM SCN 123456 DATABASE FORMAT ' | ||
+ | </ | ||
+ | Copy backup file to the standby database server. \\ | ||
+ | < | ||
+ | RMAN> CATALOG START WITH ' | ||
+ | RMAN> RECOVER DATABASE NOREDO; | ||
+ | </ | ||
+ | Backup the control file on the primary server. \\ | ||
+ | < | ||
+ | RMAN> BACKUP CURRENT CONTROLFILE FOR STANDBY FORMAT ' | ||
+ | </ | ||
+ | Copy control file backup to the standby server. \\ | ||
+ | If database locations are different on the standby server record the names ... | ||
+ | |||
+ | < | ||
+ | RMAN> REPORT SCHEMA; | ||
+ | |||
+ | RMAN> SHUTDOWN IMMEDIATE ; | ||
+ | RMAN> STARTUP NOMOUNT; | ||
+ | RMAN> RESTORE STANDBY CONTROLFILE FROM ' | ||
+ | |||
+ | SQL> SHUTDOWN; | ||
+ | SQL> STARTUP MOUNT; | ||
+ | |||
+ | RMAN> CATALOG START WITH '< | ||
+ | RMAN> SWITCH DATABASE TO COPY; | ||
+ | </ | ||
+ | |||
+ | |||
+ | If this is a Data Guard configuration then clear the standby redo log groups. \\ | ||
+ | < | ||
+ | SQL> ALTER DATABASE CLEAR LOGFILE GROUP < | ||
+ | </ | ||
+ | |||
+ | ==== RMAN SQL ==== | ||
+ | <code SQL> | ||
+ | -- Active RMAN Job | ||
+ | SELECT SID, SERIAL#, CONTEXT, SOFAR, TOTALWORK, | ||
+ | | ||
+ | FROM V$SESSION_LONGOPS | ||
+ | WHERE OPNAME LIKE ' | ||
+ | AND OPNAME NOT LIKE ' | ||
+ | AND TOTALWORK != 0 | ||
+ | AND SOFAR <> TOTALWORK | ||
+ | </ | ||
+ | |||
+ | <code SQL> | ||
+ | -- Last RMAN Operation | ||
+ | col object_type format a15 | ||
+ | alter session set nls_date_format=' | ||
+ | |||
+ | select object_type, | ||
+ | from v$rman_status | ||
+ | where session_recid = (select max(session_recid) | ||
+ | from v$rman_status) | ||
+ | and operation !=' | ||
+ | order by recid; | ||
+ | </ | ||
+ | |||
+ | <code SQL> | ||
+ | set lines 300 | ||
+ | set pages 1000 | ||
+ | col cf for 99 | ||
+ | col df for 99 | ||
+ | col elapsed_seconds heading " | ||
+ | col i0 for 99 | ||
+ | col i1 for 99 | ||
+ | col l for 99 | ||
+ | col output_mbytes for 9,999,999 heading " | ||
+ | col session_recid for 9999999 heading " | ||
+ | col session_stamp for 99999999999 heading " | ||
+ | col status for a10 trunc | ||
+ | col time_taken_display for a10 heading " | ||
+ | col output_instance for 9999 heading " | ||
+ | |||
+ | col start_time for a25 | ||
+ | col end_time | ||
+ | col START_DOW | ||
+ | |||
+ | |||
+ | col L for 999 | ||
+ | |||
+ | col INPUT_BYTES_DISPLAY for a9 heading " | ||
+ | col OUTPUT_BYTES_DISPLAY for a9 heading " | ||
+ | col INPUT_BYTES_PER_SEC_DISPLAY for a9 heading " | ||
+ | col OUTPUT_BYTES_PER_SEC_DISPLAY for a9 heading " | ||
+ | |||
+ | select | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | x.cf, x.df, x.i0, x.i1, x.l | ||
+ | from V$RMAN_BACKUP_JOB_DETAILS j | ||
+ | left outer join (select | ||
+ | d.session_recid, | ||
+ | sum(case when d.controlfile_included = ' | ||
+ | sum(case when d.controlfile_included = ' | ||
+ | and d.backup_type||d.incremental_level = ' | ||
+ | sum(case when d.backup_type||d.incremental_level = ' | ||
+ | | ||
+ | sum(case when d.backup_type = ' | ||
+ | from | ||
+ | V$BACKUP_SET_DETAILS d | ||
+ | join V$BACKUP_SET s on s.set_stamp = d.set_stamp and s.set_count = d.set_count | ||
+ | where s.input_file_scan_only = ' | ||
+ | group by d.session_recid, | ||
+ | on x.session_recid = j.session_recid and x.session_stamp = j.session_stamp | ||
+ | left outer join (select o.session_recid, | ||
+ | from GV$RMAN_OUTPUT o | ||
+ | group by o.session_recid, | ||
+ | ro on ro.session_recid = j.session_recid and ro.session_stamp = j.session_stamp | ||
+ | where j.start_time > trunc(sysdate)-& | ||
+ | order by j.start_time; | ||
+ | </ | ||
rman.1450274030.txt.gz · Last modified: 2025/03/08 22:23 (external edit)