rman target /
REPORT SCHEMA;
RESTORE TABLESPACE mytablespace;
rman target /
REPORT SCHEMA;
RESTORE DATAFILE 6;
rman target /
REPORT SCHEMA;
RECOVER DATAFILE 6;
You can achieve the same thing via SQL*Plus...
sqlplus / as sysdba
ALTER DATABASE DATAFILE 6 OFFLINE;
RECOVER DATAFILE 6;
ALTER DATABASE DATAFILE 6 ONLINE;
RESTORE CONTROLFILE;
RESTORE CONTROLFILE FROM AUTOBACKUP;
RESTORE CONTROLFILE FROM '/backup/piece';
RESTORE CONTROLFILE FROM AUTOBACKUP UNTIL TIME "TO_DATE('May 30 2025 14:00:00', 'MON DD YYYY HH24:MI:SS' )";
SET DBID=xxxxxxxxx;
RESTORE CONTROLFILE FROM '/tmp/c-1140771490-2008050203' TO '/tmp/control.tmp';
REPLICATE CONTROLFILE FROM '/tmp/control.tmp';
To tell RMAN about new backup files...
(perhaps there's a problem with the default location and you restored the backup files from tape to a new location)CATALOG START WITH '/my/backup/location'
If you are trying to do a full restore before the database is mounted...
(perhaps you are using the 10g method to build a physical standby)...you won't be able to do the above... you will get:
ORA-01507: database not mounted
One workaround for this is to create a symbolic link from the original backup location to the new backup location...
(in the example below the database was backed up to /u02/backup but we want to restore from /backup)ln -s /backup /u02/backup