1.场景
我们总共有一个全量备份,三个增量备份,我们准备恢复到第二个增量备份之后。
删除数据
[dmdba@dm1 DAMENG1]$ rm -rf SYSTEM.DBF
[dmdba@dm1 DAMENG1]$ rm -rf tps_sjzt.DBF
2.恢复到第二个增量备份的时间点
--关闭数据库
[dmdba@dm1 DAMENG1]$ DmServiceDAMENG1 stop
Stopping DmServiceDAMENG1: [ OK ]
dmrman
restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback';
restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr1';
restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr2';
recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback';
recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr1';
recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr2';
recover database '/dm/mdbms/data/DAMENG1/dm.ini' update db_magic ;
exit;
--还原
[dmdba@dm1 DAMENG1]$ dmrman
dmrman V8
RMAN> restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback';
restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback';
file dm.key not found, use default license!
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:02][Remaining:00:00:00]
restore successfully.
time used: 00:00:02.471
RMAN> restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr1';
restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr1';
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:02][Remaining:00:00:00]
restore successfully.
time used: 00:00:02.494
RMAN> restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr2';
restore database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr2';
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:02][Remaining:00:00:00]
restore successfully.
time used: 00:00:02.513
--恢复
RMAN> recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback';
recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback';
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[127212], file_lsn[127212]
[-8262]:恢复备份集[dbfull] N_MAGIC=637F35A0 与还原备份集 N_MAGIC=67CDDA0 不相同
RMAN> recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr1';
recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr1';
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[127212], file_lsn[127212]
[-8262]:恢复备份集[db_incr1] N_MAGIC=42EE960 与还原备份集 N_MAGIC=67CDDA0 不相同
RMAN> recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr2';
recover database '/dm/mdbms/data/DAMENG1/dm.ini' from backupset '/dm/dmback/dm_fullback_incr2';
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[127212], file_lsn[127212]
[Percent:100.00%][Speed:0.00PKG/s][Cost:00:00:00][Remaining:00:00:00]
recover successfully!
time used: 00:00:02.421
--更新magic;
RMAN> recover database '/dm/mdbms/data/DAMENG1/dm.ini' update db_magic ;
recover database '/dm/mdbms/data/DAMENG1/dm.ini' update db_magic;
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[127431], file_lsn[127431]
recover successfully!
time used: 00:00:01.016
3.启动数据库验证
[dmdba@dm1 DAMENG1]$ disql sysdba/dameng123@dameng1
服务器[192.168.1.20:5236]:处于普通打开状态
登录使用时间 : 3.338(ms)
disql V8
SQL> conn sjzt/"sjzt#1234"
服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间 : 4.990(ms)
SQL> select count(1) from sjzt_tab1
union all
select count(1) from sjzt_tab2
union all
select count(1) from sjzt_tab3
union all
select count(1) from sjzt_tab4;2 3 4 5 6 7
select count(1) from sjzt_tab1
union all
select count(1) from sjzt_tab2
union all
select count(1) from sjzt_tab3
union all
select count(1) from sjzt_tab4;
第7 行附近出现错误[-2106]:无效的表或视图名[SJZT_TAB4].
已用时间: 3.999(毫秒). 执行号:0.
--SJZT_TAB4 对象是在第二次增量备份以后才创建,并且包含在第三次增量备份中。
--而我们本次只恢复到第二次增量备份时,所以不包含 SJZT_TAB4;
select count(1) from sjzt_tab1
union all
select count(1) from sjzt_tab2
union all
select count(1) from sjzt_tab3 ;
行号 COUNT(1)
---------- --------------------
1 100
2 100
3 100
已用时间: 2.577(毫秒). 执行号:500.
--由此可见,我们已经完美恢复到第二次增量备份的时间点。