不完全恢复
当出现用户误操作(误删除表,截断表等)采用基于时间的不完全恢复。先使用restore database命令转储所有数据文件备份,再用recover database命令将数据库恢复到用户出错点以前的某个时刻。假设用户在2008-10-24 15:15:00误操作删除了一个表,我们可以把数据库恢复到15:10的状态。
Rman>run{
2> startup force mount;
3> set until time='2008-10-24 15:10:00';
4> restore database;
5> recover database;
6> sql 'alter database open resetlogs';
7>}
执行不完全恢复以后,要删除早期的所有备份,重新备份数据库:
Rman > run{
2> delete noprompt backup;
3> delete noprompt copy;
4> backup database format='z:/backupdata/ %d_%s.dbf';
5> sql 'alter system archive log current';
6>}
完全恢复
数据文件被误删除以后,要使用RMAN的完全恢复将数据库恢复到可用状态。先使用restore database命令转储所有的数据文件,再使用recover database命令恢复所有的数据文件。假设删除了user01.dbf文件,使用下列命令恢复数据库:
rman>run{
2> startup force mount;
3> restore database;
4> recover database;
5> sql 'alter database open ;
6>}