丢失活动或当前日志文件的恢复
Oracle通过日志文件保证提交成功的数据不丢失,可是在故障中,用户可能损失了当前的(current)日志文件.这又分为两种情况:此时数据是正常关闭的和此时数据库是异常关闭.
1.在损失当前日志时,数据库是正常关闭的.
由于关闭数据库前,oracle会执行全面检查点,当前日志在实例恢复中可以不再需要.
下面进行测试(数据库运行在非归档模式下).在oracle9i及以后版本中,是无法对当前日志进行clear,需要通过until cancel恢复后再以resetlogs方式打开
[oracle@jingyong ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Jan 7 00:39:59 2013Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining optionsSQL> select * from v$version where rownum<2;BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProdSQL> select * from v$logfile; GROUP# STATUS TYPE
---------- ------- -------
MEMBER
--------------------------------------------------------------------------------
IS_
---
3 ONLINE
/u01/app/oracle/product/10.2.0/oradata/jingyong/redo03.log
NO 2 ONLINE
/u01/app/oracle/product/10.2.0/oradata/jingyong/redo02.log
NO GROUP# STATUS TYPE
---------- ------- -------
MEMBER
--------------------------------------------------------------------------------
IS_
--- 1 ONLINE
/u01/app/oracle/product/10.2.0/oradata/jingyong/redo01.log
NO
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.SQL> !mv /u01/app/oracle/product/10.2.0/oradata/jingyong/redo* /u01/app/oracleSQL> startup
ORACLE instance started.Total System Global Area 167772160 bytes
Fixed Size 1218316 bytes
Variable Size 62916852 bytes
Database Buffers 100663296 bytes
Redo Buffers 2973696 bytes
Database mounted.
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1:
"/u01/app/oracle/product/10.2.0/oradata/jingyong/redo01.log"
SQL> alter database clear logfile group 1;Database altered.SQL> alter database clear logfile group 2;Database altered.SQL> alter database clear logfile group 3;
alter database clear logfile group 3
*
ERROR at line 1:
ORA-00313: open failed for members of log group 3 of thread 1
ORA-00312: online log 3 thread 1:
"/u01/app/oracle/product/10.2.0/oradata/jingyong/redo03.log"
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
SQL> select * from v$log; GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS
---------- ---------- ---------- ---------- ---------- --- ----------------
FIRST_CHANGE# FIRST_TIME
------------- ------------
1 1 0 52428800 1 NO UNUSED
0 06-JAN-13 3 1 0 52428800 1 NO CLEARING_CURRENT
914164 06-JAN-13 2 1 0 52428800 1 NO UNUSED
914157 06-JAN-13
SQL> recover database until cancel;
Media recovery complete.SQL> alter database open resetlogs;Database altered.SQL>
Oracle丢失inactive日志文件的恢复操作过程Oracle 11g 安装成功后在Linux开机利用chkconfig自动启动设置相关资讯 Oracle恢复 Oracle日志 Oracle丢失日志文件
- Oracle数据库在线重做日志被删除的 (12/21/2015 15:16:49)
- Oracle数据表被drop后的恢复 (10/15/2014 10:43:07)
- Oracle 10g 添加、删除日志组 (09/27/2014 06:39:21)
| - 修改Oracle重做日志文件大小 (11/17/2014 09:13:00)
- Oracle基于cancel的不完全恢复 (10/08/2014 19:32:05)
- Oracle重做日志 (09/24/2014 19:29:48)
|
本文评论 查看全部评论 (0)