Wednesday, January 5, 2022

RMAN Backup/Restore Notes

# these list and advice commands do not do much from what i have seen.

RMAN> LIST FAILURE;

RMAN> ADVISE FAILURE;

RMAN> REPAIR FAILURE;


RMAN> list backup summary;


RMAN> VALIDATE backupset 107929604, 107929605, 107929606;  (give all ids for CBK_FULL)


RMAN> RESTORE DATABASE VALIDATE;


RMAN> RESTORE ARCHIVELOG ALL VALIDATE;


RMAN> RESTORE DATABASE PREVIEW;


RMAN> run {

allocate channel t1 type SBT_TAPE;

VALIDATE DATABASE;   

release channel t1;

}


or VALIDATE PLUGGABLE DATABASE



RMAN> restore controlfile from autobackup;


RMAN> restore spfile from tag='CBK_FULL' to '$ORACLE_HOME/dbs';



SET UNTIL TIME "TO_DATE('2016-01-20 16:00:00','yyyy-mm-dd hh24:mi:ss')";

SET UNTIL SEQUENCE 1234 THREAD 1;



run {

allocate channel t1 type SBT_TAPE;

set until time "TO_DATE('2019-01-20 16:00:00','yyyy-mm-dd hh24:mi:ss')";

report schema device type sbt;

release channel t1;

}


[NOMOUNT MODE]

RMAN> run {

allocate channel t1 type SBT_TAPE;

set until time "TO_DATE('2019-01-20 16:00:00','yyyy-mm-dd hh24:mi:ss')";

RESTORE SPFILE TO PFILE '/opt/oracle/admin/<SID>/init<SID>.ora';

RESTORE CONTROLFILE TO  '/opt/oracle/admin/<SID>/ctrl01_temp.ora';

release channel t1;

}


[NOMOUNT MODE]

RMAN> startup nomount;

RMAN> RUN {

  SET UNTIL SEQUENCE 12345 THREAD 1;

  RESTORE CONTROLFILE ;

  ALTER DATABASE MOUNT;

  RESTORE DATABASE;

  RECOVER DATABASE;  # recovers through log 12344

  ALTER DATABASE OPEN RESETLOGS;

}


[MOUNT MODE]

RMAN> startup mount;

RMAN> run {

allocate channel t1 type SBT_TAPE;

allocate channel t2 type SBT_TAPE;

allocate channel t3 type SBT_TAPE;

set until time "TO_DATE('2019-01-20 16:00:00','yyyy-mm-dd hh24:mi:ss')";

restore database;

recover database;

release channel t1;

release channel t2;

release channel t3;

}


[PIT RECOVERY] [mount mode]

RMAN> FLASHBACK DATABASE TO SCN 12345678910;


RMAN> RECOVER DATABASE UNTIL TIME 'YYYY-MM-DD:HH24:MI:SS'; #need quotes


RMAN> RECOVER DATABASE UNTIL SCN 12345678910;


RMAN> RECOVER DATABASE UNTIL SEQUENCE 12345 THREAD 1;



[RECOVERY UNTIL LAST AVAILABLE ARCHIVE]

RMAN> recover database until cancel;



[RECOVER UNTIL RESTORE POINT]

STARTUP MOUNT;

RUN

{

  SET UNTIL RESTORE POINT 'before_upgrade';

  RESTORE DATABASE;

  RECOVER DATABASE;

  ALTER DATABASE OPEN RESETLOGS;

}



RMAN> alter database open resetlogs;

No comments:

Post a Comment