已归档的活动在线日志损坏,异常关闭(实验系列)

实验步骤:

                              i.             SQL> ALTER SYSTEM ARCHIVE LOG START;(自动归档设置)

                             ii.             SQL> truncate table t1;

SQL> insert into t1
  2    select dbms_flashback.get_system_change_number
  3      from (select rownum from dba_objects where rownum <= 1000) a,
  4           (select rownum from dba_objects where rownum <= 1000) b;

SQL> commit;

                           iii.             SQL> SELECT GROUP#,ARCHIVED,FIRST_CHANGE#,SEQUENCE#,STATUS FROM V$LOG;

    GROUP# ARC    FIRST_CHANGE#        SEQUENCE# STATUS
---------------- --- ---------------- ---------------- ----------------
               1 YES          2464298                5 ACTIVE
               2 NO           2465173                6 CURRENT
               3 YES          2444296                4 INACTIVE

                           iv.             SQL> select min(scn) ,max(scn) from t1;

                             v.                     MIN(SCN)         MAX(SCN)
---------------- ----------------
         2465027          2465216(数据操作落在哪些在线日志)

                           vi.             SQL> shutdown abort
ORACLE 例程已经关闭。

                          vii.             直接手动删除日志(D:\REDO01.LOG被删除)

                        viii.             SQL> startup
ORACLE 例程已经启动。
Total System Global Area        135338868 bytes
Fixed Size                         453492 bytes
Variable Size                   109051904 bytes
Database Buffers                 25165824 bytes
Redo Buffers                       667648 bytes
数据库装载完毕。
ORA-00313: 无法打开日志组 1 (线程 1) 的成员
ORA-00312: 联机日志 1 线程 1: 'D:\REDO01.LOG'
ORA-27047: 无法读取文件的标题块
OSD-04006: ReadFile() 失败, 无法读取文件
O/S-Error: (OS 38) 到达文件结尾。

                           ix.              

SQL> select hxfil FILENUMBER,fhsta STATUS,fhscn SCN,fhrba_Seq SEQUENCE from x$kcvfh;      

FILENUMBER STATUS SCN                      SEQUENCE                                                                                       ---------------- ------ ---------------- ----------------                                                                                                                 1      4 2464299                         5                                                                                                                     2      4 2464299                         5                                                                                                                       3      4 2464299                         5                                                                                                                        4      4 2464299                         5                                                                                                                        5      4 2464299                         5                                                                                                                        6      4 2464299                         5                                                                                                                      7      4 2464299                         5                                                                                                                        8      4 2464299                         5                                                                                                                        9      4 2464299                         5                                                                                                                        10      4 2464299                         5                                                                                                                      11      4 2464299                         5                                                                                                                      12      4 2464299                         5                                                                                                                      13      4 2464299                         5                                                                                                                      已选择13行。(数据文件需要介质恢复的第一个日志)

                             x.             SQL> recover database;
ORA-00283: 恢复会话因错误而取消
ORA-00313: 无法打开日志组 1 (线程 1) 的成员
ORA-00312: 联机日志 1 线程 1: 'D:\REDO01.LOG'
ORA-27047: 无法读取文件的标题块
OSD-04006: ReadFile() 失败, 无法读取文件
O/S-Error: (OS 38) 到达文件结尾。

(完全恢复失败,因为在线日志让我们破坏,只能做不完全恢复)

                           xi.             SQL> recover database using backup controlfile;(从归档中去取日志)
ORA-00279: 更改 2464299 (在 07/10/2009 15:21:12 生成) 对于线程 1 是必需的
ORA-00289: 建议: D:\ARCHIVE\1_5.DBF
ORA-00280: 更改 2464299 对于线程 1 是按序列 # 5 进行的
指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
'D:\ARCHIVE\1_5.DBF'
ORA-00279: 更改 2465173 (在 07/10/2009 15:24:19 生成) 对于线程 1 是必需的
ORA-00289: 建议: D:\ARCHIVE\1_6.DBF
ORA-00280: 更改 2465173 对于线程 1 是按序列 # 6 进行的
ORA-00278: 此恢复不再需要日志文件 'D:\ARCHIVE\1_5.DBF'

(不用until  cancel已经确定可以恢复到最新的状态)

(不完全恢复实际上 oracle自动根据 归档路径的参数 和日志序列号 自动生成的路径去找的)

                          xii.             ORA-00279: 更改 2465173 (在 07/10/2009 15:24:19 生成) 对于线程 1 是必需的
ORA-00289: 建议: D:\ARCHIVE\1_6.DBF
ORA-00280: 更改 2465173 对于线程 1 是按序列 # 6 进行的
ORA-00278: 此恢复不再需要日志文件 'D:\ARCHIVE\1_5.DBF'
指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
D:\REDO02.LOG
已应用的日志。
完成介质恢复。(不完全恢复最后一步需要输入日志路径)

                        xiii.             SQL> alter database open resetlogs;
数据库已更改。

                        xiv.             SQL> select min(scn) ,max(scn) from t1;
        MIN(SCN)         MAX(SCN)
---------------- ----------------
         2465027          2465216
已选择 1 行。

                          xv.             恢复完成!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值