文件、修改-Oracle非常规恢复(使用BBED跳过归档)-by小雨

工作之余抽点时间出来写写博文,希望对新接触的朋友有帮助。今天在这里和大家一起学习一下文件、修改-

    一、BBED工具

    1.BBED的安装

    oracle 11g中缺bbed包,oracle11g bbed install and example 

    1.上传(sbbdpt.o ssbbded.o bbedus.msb,该三个文件贝拷oracle的linux64版本的)文件

    $ORACLE_HOME/rdbms/lib/ssbbded.o

    $ORACLE_HOME/rdbms/lib/sbbdpt.o

    $ORACLE_HOME/rdbms/mesg/bbedus.msb

    执行如下命令:

    cd $ORACLE_HOME/rdbms/lib

    make -f $ORACLE_HOME/rdbms/lib/ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed

    2.进入BBED

    bbed

    blockedit

    $vi par.txt

    blocksize=8192

    listfile=filelist.txt

    mode=edit

    $vi filelist.txt

    select file#||chr(9)||name||chr(9)||bytes from v$datafile;

  1 /u01/app/oracle/oradata/ocp/system01.dbf  512000000

  2 /u01/app/oracle/oradata/ocp/sysaux01.dbf  412000000

  3 /u01/app/oracle/oradata/ocp/users01.dbf   215000000

    bbed parfile=par.txt

    blockedit

    3.常用命令:set、 find、 dump、 modify 、sum apply、examine、map 、print、 verity 

 (1)set file 3 block 32

    set dba 0x01000020

    set offset 0           --0表现第一个节字开始

    set block  1           --1表现第一个块开始

    set count 8192         --认默是示显512节字

 (2)find /x 05d67g         --查指定的字符串在指定据数块中的具体位置

    f                      --find的简写,表现继承从前当位置开始往下询查字符串05d67g

 (3)dump                   --十六进制查看block

    dump /v                --查看十六进制内容的同时以文本式方“翻译”十六进制示显的内容,相当于对前当block执行strings命令

 (4)modify /x d43          --修改指定block,指定offset的据数块块内记载的内容

 (5)sum apply              --盘算修改后的据数块的checksum值,然后写入据数块的offset为16-17的位置

 (6) map

      map /v

      p kcbh

      p ktbbh

      p kdbh

      p kdbt

      p kcvfh

      p kcvfh.kcvfhrfn

      p kcvfh.kcvfhckp

      p *kdbr[0]  --第一行记载

      x /rnc      -examine /read number char  用16进制翻译成我们能看懂的文件

    二、应用BBED跳过档归

    1.查文件号与scn

 select file#,checkpoint_change# from v$datafile;

          3            2951615

 select file#,checkpoint_change# from v$datafile_header;

         3             2951615

    2.对3号文件rman份备

    backup datafile 3 format '/backup/datafile4_%U';

    3.切志日

    alter system switch logfile;

    4.3号文件离线

    alter database datafile 3 offline;

    5.原还3号文件

  restore datafile 3;

    6.报错,须要恢复

    alter database datafile 3 online;

    7.不要恢复

    recover datafile 3;

    8.dump文件头

 alter session set events 'immediate trace name file_hdrs level 10';

   Checkpointed at scn:  0x0000.003af414 09/27/2012 13:00:06

   thread:1 rba:(0x4.2.10)

    9.缺档归

    rm -rf /arch/*

    10.修改scn

    Checkpointed at scn: 0x0000.0013cfd5 09/27/2012 13:00:06

   修改rba

   thread:1 rba:(0x5.1b.10)

    11.用bbed修改(rba)--struct kcvcprba

   select GROUP#,SEQUENCE#,STATUS from v$log;

   bbed parfile=par.txt

    show all

   set filename '/u01/app/oracle/oradata/ocp/tp1.dbf'

   set file 4 block 1

   dump

   p kcvfh

   set offset 500

   dump

   modify /x 16000000

   set offset 4

   modify /x 10000000

   set offset 0

   dump

    sum apply

    12.用bbed修改(scn)--ub4 kscnbas

    select group#,SEQUENCE#,status,to_char(first_change#,'xxxxxxxxx') from v$log;

    --select file#,name,checkpoint_change#,to_char(checkpoint_change#,'xxxxxxxx') from v$datafile_header;

                                      113930  --> 303911

    select sequence#,first_change#,next_change#,to_char(first_change#,'xxxxxxxxx') from v$log_history order by 1;

                                      13d013  --> 

 dump

 p kcvfh

 set offset 484

 dump

 modify /x 9c3911

 sum apply

    13.恢复

    recover datafile 3;

 alter database datafile 3 online;

    

    

    

    

**********本博客全部内容均为原创,若有转载请注明作者和出处!!!**********
Name:    guoyJoe

    

QQ:      252803295

    

Email:    [email protected]

    

Blog:      http://blog.csdn.net/guoyJoe

    

ITPUB:   http://www.itpub.net/space-uid-28460966.html

    

OCM:    http://education.oracle.com/education/otn/YGuo.HTM
_____________________________________________________________
加群验证题问:哪些SGA结构是需必的,哪些是可选的?否则绝拒请申!!!

    

案答在:http://blog.csdn.net/guoyjoe/article/details/8624392

    

DSI&Core Search(QQ群):127149411

文章结束给大家分享下程序员的一些笑话语录: 这个世界上只有10种人:懂得二进制的和不懂得二进制的。

你可能感兴趣的:(oracle)