redo文件破坏使用隐含参数恢复数据库(一)

2014-11-24 18:36:13 · 作者: · 浏览: 0

数据库在没有归档的情况下active状态日志损坏


SQL> select * from v$Log;


GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM


---------- ---------- ---------- -------------------- --- ---------------- ------------- ---------


1 1 2 52428800 1 NO ACTIVE 462055 07-SEP-12


2 1 3 52428800 1 NO CURRENT 462062 07-SEP-12


3 1 1 52428800 1 NO ACTIVE 461887 07-SEP-12



SQL> select * from v$logfile;



GROUP# STATUS TYPE MEMBER IS_


---------- ------- ----------------------------------------------- ---


3 ONLINE /u01/tiger/oradata/orcl/redo03.log NO


2 ONLINE /u01/tiger/oradata/orcl/redo02.log NO


1 ONLINE /u01/tiger/oradata/orcl/redo01.log NO



SQL> !cp /etc/passwd/u01/tiger/oradata/orcl/redo01.log



SQL> shut abort


SQL> startup


ORACLE instance started.



Total System Global Area 314572800 bytes


Fixed Size 1219136 bytes


Variable Size 109053376 bytes


Database Buffers 197132288 bytes


Redo Buffers 7168000 bytes


Database mounted.


ORA-00313: open failed for members of log group 1 of thread 1


ORA-00312: online log 1 thread 1:'/u01/tiger/oradata/orcl/redo01.log'


ORA-27046: file size is not a multiple oflogical block size


Additional information: 1


------启动的时候发现日志组1出现了问题


SQL> select * from v$log;



GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM


---------- ---------- ---------- -------------------- --- ---------------- ------------- ---------


1 1 2 52428800 1 NO ACTIVE 462055 07-SEP-12


3 1 1 52428800 1 NO ACTIVE 461887 07-SEP-12


2 1 3 52428800 1 NO CURRENT 462062 07-SEP-12


----查看得出日志组1active状态


SQL> archive log list


Database log mode No Archive Mode


Automatic archival Disabled


Archive destination USE_DB_RECOVERY_FILE_DEST


Oldest online log sequence 1


Current log sequence 3


------再看数据库的模式:得出是非归档状态


SQL> recover database;


ORA-00283: recovery session canceled due toerrors


ORA-00313: open failed for members of loggroup 1 of thread 1


ORA-00312: online log 1 thread 1:'/u01/tiger/oradata/orcl/redo01.log'


ORA-27046: file size is not a multiple oflogical block size


Additional information: 1




SQL> recover database until cancel;


ORA-00279: change 462055 generated at09/07/2012 14:03:23 needed for thread 1


ORA-00289: suggestion :/u01/tiger/flash_recovery_area/ORCL/archivelog/2012_09_07/o1_mf_1_2_%u_.arc


ORA-00280: change 462055 for thread 1 is insequence #2




Specify log: {=suggested |filename | AUTO | CANCEL}



ORA-00308: cannot open archived log '/u01/tiger/flash_recovery_area/ORCL/archivelog/2012_09_07/o1_mf_1_2_%u_.arc'


ORA-27037: unable to obtain file status


Linux Error: 2: No such file or directory


Additional information: 3


ORA-01547: warning: RECOVER succeeded butOPEN RESETLOGS would get error below


ORA-01194: file 1 needs more recovery to beconsistent


ORA-01110: data file 1:'/u01/tiger/oradata/orcl/system01.