恢复测试:全部online redo log文件损坏的恢复,但无法清空cu...
恢复测试:全部online redo log文件损坏的恢复,但无法清空current的redo文件!测试过程:
* shutdown immediate
* 删除全部redo log文件
* startup mount
* SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# ARC STATUS
-------------------- ---------- --- ----------------
1 1 35 YES INACTIVE
2 1 36 NO CURRENT
3 1 34 YES INACTIVE
SQL> alter database clear logfile group 1;
数据库已更改。
SQL> alter database clear logfile group 3;
数据库已更改。
SQL> alter database clear unarchived logfile group 2;
alter database clear unarchived logfile group 2
*
ERROR 位于第 1 行:
ORA-00313: 无法打开日志组 2 (线程 1) 的成员
ORA-00312: 联机日志 2 线程 1: 'D:\ORACLE\ORADATA\KACA2U\REDO02.LOG'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
SQL> alter database clear logfile group 2;
alter database clear logfile group 2
*
ERROR 位于第 1 行:
ORA-00350: 日志 2 (线程 1) 中需要归档
ORA-00312: 联机日志 2 线程 1: 'D:\ORACLE\ORADATA\KACA2U\REDO02.LOG'
SQL> alter database add logfile member 'D:\oracle\oradata\kaca2u\redo02.log' to group 2;
alter database add logfile member 'D:\oracle\oradata\kaca2u\redo02.log' to group 2
*
ERROR 位于第 1 行:
ORA-01577: 无法添加日志文件'D:\oracle\oradata\kaca2u\redo02.log' - 文件已是数据库的一部分
SQL> alter database drop logfile member 'D:\ORACLE\ORADATA\KACA2U\REDO02.LOG';
alter database drop logfile member 'D:\ORACLE\ORADATA\KACA2U\REDO02.LOG'
*
ERROR 位于第 1 行:
ORA-00361: 无法删除最后一个日志成员 D:\ORACLE\ORADATA\KACA2U\REDO02.LOG (组 2)
SQL> alter database add logfile member 'D:\oracle\oradata\kaca2u\redo02-2.log' to group 2;
数据库已更改。
SQL> alter database drop logfile member 'D:\ORACLE\ORADATA\KACA2U\REDO02.LOG';
alter database drop logfile member 'D:\ORACLE\ORADATA\KACA2U\REDO02.LOG'
*
ERROR 位于第 1 行:
ORA-00362: 组成组 2 中的有效日志文件要求输入成员
ORA-01517: 日志成员: 'D:\ORACLE\ORADATA\KACA2U\REDO02.LOG'
* 用了很多方法,无法清除或加入current文件,最后用redo02-2.log改名成redo02.log,但启动后SQL> alter database open ;
alter database open
*
ERROR 位于第 1 行:
ORA-03113: 通信通道的文件结束
SQL> startup force;
ORA-24324: 未初始化服务句柄
ORA-01041: 内部错误,hostdef 扩展名不存在
SQL> shutdown immeidate
SP2-0717: 非法的 SHUTDOWN 选项
SQL> shutdown immediate
ORA-24324: 未初始化服务句柄
ORA-01041: 内部错误,hostdef 扩展名不存在
** 如果遇到全部online redo损坏的情况下,只有用上一次的全备加归档日志恢复到损坏redo之前的scn或时间点这一种方法吗?我已经正常关闭db,因该没有online redo下,重建redo后因该可以正常打开数据库,为什么现在不行?其实在真实环境中,丢失全部的redo下数据库一定是以非正常的方式关闭,因此更加复杂,以上问题解决后会模拟一下非正常关闭db的情况!
数据库未打开的情况下
如何LOG SWTICH
有谁知道呀?
万一redo全部损失,那不是要全库恢复,这样好像效率有点低!
页:
[1]