基于scn号恢复oracle数据库测试
oracle11g 数据库
RMAN> backup database plus archivelog delete all input; (首先做一次数据库全备)
[oracle@linux ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Mon Jul 16 16:52:01 2018Copyright (c) 1982, 2013, Oracle. All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsSYS@testdb> conn scott/oracle (连接到数据库scott用户,新建一张表格)Connected.SCOTT@testdb> create table t1 (x int);Table created.SCOTT@testdb> insert into t1 values (1);1 row created.SCOTT@testdb> commit ; (表格中插入数据,提交)Commit complete.SCOTT@testdb> select * from t1; X---------- 1SCOTT@testdb> conn / as sysdbaConnected.SYS@testdb> select timestamp_to_scn(sysdate) from v$database; (查看当前状态的SCN号)TIMESTAMP_TO_SCN(SYSDATE)------------------------- 1026157SYS@testdb> SYS@testdb> conn scott/oracleConnected.SCOTT@testdb> insert into t1 values (2);1 row created.SCOTT@testdb> commit ;Commit complete.SCOTT@testdb> select * from t1; X---------- 1 2SCOTT@testdb> conn / as sysdbaConnected.SYS@testdb> shutdown immediate;Database closed.Database dismounted.ORACLE instance shut down.SYS@testdb> startup mount;ORACLE instance started.Total System Global Area 1603411968 bytesFixed Size 2253664 bytesVariable Size 1006636192 bytesDatabase Buffers 587202560 bytesRedo Buffers 7319552 bytesDatabase mounted.SYS@testdb> SYS@testdb> quitDisconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options[oracle@linux ~]$ rman target /Recovery Manager: Release 11.2.0.4.0 - Production on Mon Jul 16 16:58:23 2018Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.connected to target database: TESTDB (DBID=2764677489, not open)RMAN> run{ (基于SCN号恢复数据库到scn所指状态)2> set until scn = 1026157;3> restore database;4> recover database;5> alter database open resetlogs;6> }executing command: SET until clauseStarting restore at 2018-07-16 16:59:43using target database control file instead of recovery catalogallocated channel: ORA_DISK_1channel ORA_DISK_1: SID=63 device type=DISKchannel ORA_DISK_1: starting datafile backup set restorechannel ORA_DISK_1: specifying datafile(s) to restore from backup setchannel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/TESTDB/datafile/o1_mf_system_fnhjdl8q_.dbfchannel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/TESTDB/datafile/o1_mf_sysaux_fnhjdl9x_.dbfchannel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/TESTDB/datafile/o1_mf_undotbs1_fnhjdlb1_.dbfchannel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/TESTDB/datafile/o1_mf_users_fnhjdlbo_.dbfchannel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/TESTDB/datafile/o1_mf_example_fnhjj8l9_.dbfchannel ORA_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/TESTDB/backupset/2018_07_16/o1_mf_nnndf_TAG20180716T164512_fnrprryw_.bkpchannel ORA_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/TESTDB/backupset/2018_07_16/o1_mf_nnndf_TAG20180716T164512_fnrprryw_.bkp tag=TAG20180716T164512channel ORA_DISK_1: restored backup piece 1channel ORA_DISK_1: restore complete, elapsed time: 00:02:06Finished restore at 2018-07-16 17:01:50Starting recover at 2018-07-16 17:01:50using channel ORA_DISK_1starting media recoverymedia recovery complete, elapsed time: 00:00:02Finished recover at 2018-07-16 17:01:52database openedRMAN> RMAN> quitRecovery Manager complete.[oracle@linux ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Mon Jul 16 17:05:00 2018Copyright (c) 1982, 2013, Oracle. All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsSYS@testdb> conn scott/oracleConnected.SCOTT@testdb> select * from t1; (查看,已经恢复) X---------- 1SCOTT@testdb> SCOTT@testdb> conn / as sysdba Connected.SYS@testdb> select timestamp_to_scn(sysdate) from v$database;TIMESTAMP_TO_SCN(SYSDATE)------------------------- 1026598SYS@testdb>