Restore / Recovery (Previous incarnation)

Remove current password file

Default password file location is under $ORACLE_HOME/dbs/orapw. To be on safe side instead of removing the file you can rename it. Example of UNIX command:

mv $ORACLE_HOME/dbs/orapwCOGNOS8U $ORACLE_HOME/dbs/orapwCOGNOS8U.tmp

Create new password file

To create new password file use UNIX command orapwd. Example of UNIX command:

orapwd file=$ORACLE_HOME/dbs/orapwCOGNOS8U password=********

Connect to catalog with RMAN

To connect to catalog with RMAN you have to execute following command:

rman target / catalog <USERID>/<PASSWORD>@<RMANDB>

Example of UNIX command:

rman target / catalog rman_COGNOS8U/********@rcvcat

Find DBID

If you don’t have a DBID you can find all relevant DBIDs by listing incarnations of database. DBIDs are in 4th column. Example of RMAN command:

list incarnation of database COGNOS8U;

Set DBID

Database must not be started before setting DBID. Shutdown the database first with following RMAN command:

SHUTDOWN IMMEDIATE

Now you can set DBID found at the beginning of this tutorial with RMAN command SET DBID. Example of RMAN command:

SET DBID 3881298188;

*This command can be used only when database is not started.

Restart database to NOMOUNT state

Database has to be started in NOMOUNT mode. To do this execute following RMAN command:

SHUTDOWN IMMEDIATE
STARTUP NOMOUNT;

Restore, recover and open database

Besides datafiles also control files has to be restored. After recovery open database with resetlogs option (old logs are useless). Example of RMAN command:

run {
set until time "to_date('21-JUL-2011:00:00:00','DD-MON-YYYY:HH24:MI:SS')";
allocate channel t1 type 'SBT_TAPE' parms 'ENV=(TDPO_OPTFILE=/or0700024/a01/admin/backup/tdpo_COGNOS8U.opt)';
restore database;
restore controlfile;
alter database mount;
recover database;
alter database open resetlogs;
release channel t1;
}

Reuse old tempfile within TEMP tablespace

Find old tempfile in file system and use SQL’s ALTER TABLESPACE command to reuse it. Example of SQL command:

ALTER TABLESPACE TEMP ADD TEMPFILE '/or0700024/a05a/COGNOS8U/temp01.dbf' REUSE;

Leave a Reply