到目前為止,已經完成了一個成功的數据庫還原和一次數据庫完全恢复. 不完全恢复使用一個數据庫備份,并將其回退到此前的某個時間點。採用的不是最近的備份之後的所有重做記錄,而是截止到某一特定時間點的重做日誌。 在以下情況可能會需要對整個數据庫進行不完全恢复:
1) 由於失誤而丟失了一個數据庫對象。
2) 丟失了部分或全部聯机重做日誌。
3) 在恢复過程中丟失了一個已歸檔的重做日誌。
4) 錯誤地刪除了表空間。
注意: 不完全恢复只能採用歸檔重做日誌。
[@more@]SYS@HUIYI>create table t 2 ( 3 col date 4 ) 5 tablespace tbs01; Table created. SYS@HUIYI>insert into t values(sysdate); 1 row created. SYS@HUIYI>commit; Commit complete. SYS@HUIYI>select * from t; COL ------------------ 08-Mar-07 17:14:59 SYS@HUIYI>@cold_backup; SYS@HUIYI>insert into t values(sysdate); 1 row created. SYS@HUIYI>commit; Commit complete. SYS@HUIYI>select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') col from dual; COL -------------------------------------- 2007-03-08 17:17:54 SYS@HUIYI>insert into t values(sysdate); 1 row created. SYS@HUIYI>commit; Commit complete. SYS@HUIYI>select * from t; COL ------------------ 08-Mar-07 17:14:59 08-Mar-07 17:17:50 08-Mar-07 17:18:01 SYS@HUIYI>drop table t; Table dropped. SYS@HUIYI>alter system switch logfile; System altered. SYS@HUIYI>/ System altered. SYS@HUIYI>/ System altered. SYS@HUIYI>shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SYS@HUIYI>host copy g:bbackupcold*.dbf %oracle_home%oradatahuiyi /y SYS@HUIYI>startup mount; ORACLE instance started. Total System Global Area 143727516 bytes Fixed Size 453532 bytes Variable Size 109051904 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. SYS@HUIYI>select * from v$recover_file; FILE# ONLINE ONLINE_STATUS ERROR CHANGE# TIME ---------- -------------- -------------- ---------- ---------- ------------------ 1 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 2 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 3 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 4 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 5 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 6 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 7 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 8 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 9 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 10 ONLINE ONLINE 486090298 08-Mar-07 17:15:12 10 rows selected. SYS@HUIYI>select name,sequence#,first_change#,first_time from v$archived_log; NAME SEQUENCE# FIRST_CHANGE# FIRST_TIME ---------------------------------------- ---------- ------------- ------------------ G:A9IRDBMSARC00001.001 1 183768 06-Mar-07 10:49:42 G:A9IRDBMSARC00002.001 2 484205679 07-Mar-07 09:22:07 G:A9IRDBMSARC00003.001 3 485784166 07-Mar-07 10:03:23 G:A9IRDBMSARC00004.001 4 485804466 07-Mar-07 10:22:19 G:A9IRDBMSARC00005.001 5 485825256 07-Mar-07 10:25:25 G:A9IRDBMSARC00011.001 11 485958933 07-Mar-07 16:22:37 G:A9IRDBMSARC00012.001 12 485959102 07-Mar-07 16:23:45 G:A9IRDBMSARC00013.001 13 485959231 07-Mar-07 16:24:25 G:A9IRDBMSARC00014.001 14 485960040 07-Mar-07 16:31:31 G:A9IRDBMSARC00015.001 15 485960048 07-Mar-07 16:31:53 G:A9IRDBMSARC00016.001 16 485960132 07-Mar-07 16:32:05 G:A9IRDBMSARC00017.001 17 485960167 07-Mar-07 16:32:11 G:A9IRDBMSARC00018.001 18 485960170 07-Mar-07 16:32:16 D:ARCHIVELOGHUIYIARC00019.001 19 485960299 07-Mar-07 16:33:05 D:ARCHIVELOGHUIYIARC00020.001 20 485960542 07-Mar-07 16:34:10 D:ARCHIVELOGHUIYIARC00021.001 21 485960771 07-Mar-07 16:34:53 D:ARCHIVELOGHUIYIARC00022.001 22 485960889 07-Mar-07 16:35:21 D:ARCHIVELOGHUIYIARC00023.001 23 485961007 07-Mar-07 16:35:47 D:ARCHIVELOGHUIYIARC00024.001 24 485993389 08-Mar-07 08:51:22 D:ARCHIVELOGHUIYIARC00025.001 25 486025575 08-Mar-07 11:12:35 D:ARCHIVELOGHUIYIARC00026.001 26 486025584 08-Mar-07 11:12:55 D:ARCHIVELOGHUIYIARC00027.001 27 486029901 08-Mar-07 11:31:44 D:ARCHIVELOGHUIYIARC00028.001 28 486062333 08-Mar-07 13:56:36 D:ARCHIVELOGHUIYIARC00029.001 29 486062424 08-Mar-07 13:56:39 D:ARCHIVELOGHUIYIARC00030.001 30 486091332 08-Mar-07 17:20:27 D:ARCHIVELOGHUIYIARC00031.001 31 486091334 08-Mar-07 17:20:28 26 rows selected. SYS@HUIYI>recover database until time '2007-03-08 17:17:54'; ORA-00279: change 486090298 generated at 03/08/2007 17:15:12 needed for thread 1 ORA-00289: suggestion : D:ARCHIVELOGHUIYIARC00029.001 ORA-00280: change 486090298 for thread 1 is in sequence #29 Specify log: {=suggested | filename | AUTO | CANCEL} D:ARCHIVELOGHUIYIARC00029.001 Log applied. Media recovery complete. SYS@HUIYI>alter database open resetlogs; Database altered. SYS@HUIYI>select * from t; COL ------------------ 08-Mar-07 17:14:59 08-Mar-07 17:17:50 Thu Mar 08 17:29:04 2007 ALTER DATABASE RECOVER database until time '2007-03-08 17:17:54' Thu Mar 08 17:29:04 2007 Media Recovery Start Starting datafile 1 recovery in thread 1 sequence 29 Datafile 1: 'G:A9IORADATAHUIYISYSTEM01.DBF' Starting datafile 2 recovery in thread 1 sequence 29 Datafile 2: 'G:A9IORADATAHUIYIUNDOTBS01.DBF' Starting datafile 3 recovery in thread 1 sequence 29 Datafile 3: 'G:A9IORADATAHUIYIDRSYS01.DBF' Starting datafile 4 recovery in thread 1 sequence 29 Datafile 4: 'G:A9IORADATAHUIYIEXAMPLE01.DBF' Starting datafile 5 recovery in thread 1 sequence 29 Datafile 5: 'G:A9IORADATAHUIYIINDX01.DBF' Starting datafile 6 recovery in thread 1 sequence 29 Datafile 6: 'G:A9IORADATAHUIYIODM01.DBF' Starting datafile 7 recovery in thread 1 sequence 29 Datafile 7: 'G:A9IORADATAHUIYITOOLS01.DBF' Starting datafile 8 recovery in thread 1 sequence 29 Datafile 8: 'G:A9IORADATAHUIYIUSERS01.DBF' Starting datafile 9 recovery in thread 1 sequence 29 Datafile 9: 'G:A9IORADATAHUIYIXDB01.DBF' Starting datafile 10 recovery in thread 1 sequence 29 Datafile 10: 'G:A9IORADATAHUIYITBS01.DBF' Media Recovery Log ORA-279 signalled during: ALTER DATABASE RECOVER database until time '2007-... Thu Mar 08 17:29:38 2007 ALTER DATABASE RECOVER LOGFILE 'D:ARCHIVELOGHUIYIARC00029.001' Thu Mar 08 17:29:38 2007 Media Recovery Log D:ARCHIVELOGHUIYIARC00029.001 Terminal Recovery: done UNTIL CHANGE 486090820 Media Recovery Complete Completed: ALTER DATABASE RECOVER LOGFILE 'D:ARCHIVELOGH
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8799875/viewspace-903469/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8799875/viewspace-903469/