我用rman进行oracle的备份与还原,主要操作如下,但是就是还原不了,大家帮看看是什么原因啊1、 零级备份表空间
Run{
backup incremental level 0 users format 'c:/testrman/ tslevel0%u_%p_%c' tablespace users;
}
2、 1级备份表空间
Run{
backup incremental level 1 users format 'c:/testrman/ tslevel1%u_%p_%c' tablespace users;
}3、 2级备份表空间
Run{
backup incremental level 2 users format 'c:/testrman/ tslevel2%u_%p_%c' tablespace users;
}4、 表空间恢复
run {
sql "alter tablespace users offline immediate";
restore tablespace users ";
recover tablespace users ";
sql "alter tablespace users online ";
}
我现在创建了一个表,然后在里面插入了几行数据,然后进行0级备份表空间,备份完后,我把表里的数据删除一条,然后进行表空间恢复,可是恢复过后还是没有成功,这是什么原因呢?还请各位高手指教啊!
Run{
backup incremental level 0 users format 'c:/testrman/ tslevel0%u_%p_%c' tablespace users;
}
2、 1级备份表空间
Run{
backup incremental level 1 users format 'c:/testrman/ tslevel1%u_%p_%c' tablespace users;
}3、 2级备份表空间
Run{
backup incremental level 2 users format 'c:/testrman/ tslevel2%u_%p_%c' tablespace users;
}4、 表空间恢复
run {
sql "alter tablespace users offline immediate";
restore tablespace users ";
recover tablespace users ";
sql "alter tablespace users online ";
}
我现在创建了一个表,然后在里面插入了几行数据,然后进行0级备份表空间,备份完后,我把表里的数据删除一条,然后进行表空间恢复,可是恢复过后还是没有成功,这是什么原因呢?还请各位高手指教啊!
另外,在归档模式下,归档日志也是要进行备份的,否则你的备份就是“不可还原的”。
2,如果你只想恢复指定的表空间,你可以使用rman进行表空间时间点恢复(TSPITR),你至少要有system,undo和users
表空间的完全备份以及相应的归档日志备份。
你还要建立一个辅助实例用来进行tspitr。
你没有指定时间点,因此数据库为了保持一致,会把tablespace恢复到你当前的状态。
因此,redolog中的操作又被执行了一次。
你要进行不完全恢复才可以,我上面提到了。
run{
sql "alter tablespace users offline immediate";
sql 'alter session set nls_date_format="yyyy-mm-dd hh24:mi:ss" ';
set until time '2009-01-06 09:00:00';
restore tablespace users;
recover tablespace users;
sql "alter tablespace users online ";
}
恢复时候出现错误
rman-06054:media recovery requesting unknown log:thread 1 seq 60 lowscn 639098当我输入
select * from test;语句时出现这2个错误
ora-00376:file 4 cannot be read at this time
ora-01110:data file 4:'f:\oracle\product\10.1.0\oradata\users01.dbf'
另外,在归档模式下,归档日志也是要进行备份的,否则你的备份就是“不可还原的”。
2,如果你只想恢复指定的表空间,你可以使用rman进行表空间时间点恢复(TSPITR),你至少要有system,undo和users
表空间的完全备份以及相应的归档日志备份。
你还要建立一个辅助实例用来进行tspitr。
rman> recover datafile 4;
rman> sql "alter tablespace users online";
这样恢复一下,就可以了,就没有以下两个错误了
ora-00376:file 4 cannot be read at this time
ora-01110:data file 4:'f:\oracle\product\10.1.0\oradata\users01.dbf'又有一个疑惑,为什么用
run {
sql "alter tablespace users offline immediate";
restore tablespace users ";
recover tablespace users ";
sql "alter tablespace users online ";
}
这个就不行呢,语句有错误吗?