使用bbed修改文件头,推进scn,恢复offlinedrop的数据文件(二)

2015-07-24 10:43:44 · 作者: · 浏览: 8
96,确认无误,只要修改scn为最新的1041564,即可打开损坏的数据文件。

BBED> d /v dba 4,1 offset 484 count 16
 File: /u01/apps/oracle/oradata/utf8a/users01.dbf(4)
 Block: 1      Offsets:  484 to  499 Dba:0x01000001
-------------------------------------------------------
 18de0f00 00000000 59183234 01000000 l ......Y.24....
 
 <16 bytes per line>
 

因为是这里为linux x64 ,为little endian。

1039896=18de0f00

1041564=9ce40f00

直接修改即可。

BBED> set mode edit
       MODE            Edit
 
BBED> m /x 9ce40f dba 4,1 offset 484
 File:/u01/apps/oracle/oradata/utf8a/users01.dbf (4)
 Block: 1                Offsets:  484 to 499           Dba:0x01000001
------------------------------------------------------------------------
 9ce40f00 00000000 59183234 01000000
 
 <32 bytes per line>
 
 
 
BBED> m /x 9ce40f dba 4,1 offset 484
 File: /u01/apps/oracle/oradata/utf8a/users01.dbf(4)
 Block: 1                Offsets:  484 to 499           Dba:0x01000001
------------------------------------------------------------------------
 9ce40f00 00000000 59183234 01000000
 
 <32 bytes per line>
 
BBED> sum
Check value for File 4, Block 1:
current = 0x5f67, required = 0x65e3
 
BBED> sum apply
Check value for File 4, Block 1:
current = 0x65e3, required = 0x65e3

完成任务

 
sys@UTF8A> alter database datafile 4online ;
 
Database altered.
 
sys@UTF8A> selectfile#,change#,online_status from v$recover_file ;
 
    FILE#    CHANGE# ONLINE_
---------- ---------- -------
        4    1041564 ONLINE
 
sys@UTF8A> alter database datafile 4online ;
 
Database altered.
 
sys@UTF8A> alter database open ;
alter database open
*
ERROR at line 1:
ORA-01113: file 4 needs media recovery
ORA-01110: data file 4:'/u01/apps/oracle/oradata/utf8a/users01.dbf'
 
 
sys@UTF8A> recover datafile 4 ;
Media recovery complete.
sys@UTF8A> alter database open ;
 
Database altered.
 
sys@UTF8A> select * from scott.emp where rownum<2 ;
 
     EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM    DEPTNO
---------- ---------- --------- ---------- --------- -------------------- ----------
      7369 SMITH      CLERK           7902 17-DEC-80        800                    20

完成后记得逻辑导出所有用户数据,并且完善备份计划。