修改file header (测)

--修改file header

-------------------------------------------------------------------------

cd $ORACLE_H0ME/rdbms/lib

./bbed blockedit

set filename ‘/u01/app/oracle/product/10.2.0/db_1/dbs/test01.dbf‘

show

map /v

p kcvfhckp

BBED> modify /x 005a

--拷贝 文件 那块 要好好测试 和认知

BBED> showv

FILE#           1

BLOCK#          1

OFFSET          0

DBA             0x00400001 (4194305 1,1)

FILENAME        /u01/app/oracle/oradata/test/block.dbf

BIFILE          bifile.bbd

LISTFILE        list

BLOCKSIZE       8192

MODE            Edit

EDIT            Unrecoverable

IBASE           Dec

OBASE           Dec

WIDTH           80

COUNT           512

LOGFILE         log.bbd

SPOOL           No

BBED> map /v

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                                     Dba:0x00400001

------------------------------------------------------------

Data File Header

struct kcvfh, 676 bytes                    @0

struct kcvfhbfh, 20 bytes               @0

struct kcvfhhdr, 76 bytes               @20

ub4 kcvfhrdb                            @96

struct kcvfhcrs, 8 bytes                @100

ub4 kcvfhcrt                            @108

ub4 kcvfhrlc                            @112

struct kcvfhrls, 8 bytes                @116

ub4 kcvfhbti                            @124

struct kcvfhbsc, 8 bytes                @128

ub2 kcvfhbth                            @136

ub2 kcvfhsta                            @138               //强制打开数据库的时候  有的资料上说这个也要修改

图片来源(oracle 实战攻略)

struct kcvfhckp, 36 bytes               @484       修改的三个部分!   9i 140 处

ub4 kcvfhcpc                            @140

ub4 kcvfhrts                            @144

ub4 kcvfhccc                            @148

struct kcvfhbcp, 36 bytes               @152

ub4 kcvfhbhz                            @312

struct kcvfhxcd, 16 bytes               @316

word kcvfhtsn                           @332

ub2 kcvfhtln                            @336

text kcvfhtnm[30]                       @338

ub4 kcvfhrfn                            @368

struct kcvfhrfs, 8 bytes                @372

ub4 kcvfhrft                            @380

struct kcvfhafs, 8 bytes                @384

ub4 kcvfhbbc                            @392

ub4 kcvfhncb                            @396

ub4 kcvfhmcb                            @400

ub4 kcvfhlcb                            @404

ub4 kcvfhbcs                            @408

ub2 kcvfhofb                            @412

ub2 kcvfhnfb                            @414

ub4 kcvfhprc                            @416

struct kcvfhprs, 8 bytes                @420

struct kcvfhprfs, 8 bytes               @428

ub4 kcvfhtrt                            @444

ub4 tailchk                                @8188

BBED> p kcvfhckp

struct kcvfhckp, 36 bytes                   @484

struct kcvcpscn, 8 bytes                 @484

ub4 kscnbas                           @484      0x000ddc27   --

ub2 kscnwrp                           @488      0x0000

ub4 kcvcptim                             @492      0x2d2fe78a   --

ub2 kcvcpthr                             @496      0x0001

union u, 12 bytes                        @500

struct kcvcprba, 12 bytes             @500

ub4 kcrbaseq                       @500      0x00000011

ub4 kcrbabno                       @504      0x00000002

ub2 kcrbabof                       @508      0x0010

ub1 kcvcpetb[0]                          @512      0x02

ub1 kcvcpetb[1]                          @513      0x00

ub1 kcvcpetb[2]                          @514      0x00

ub1 kcvcpetb[3]                          @515      0x00

ub1 kcvcpetb[4]                          @516      0x00

ub1 kcvcpetb[5]                          @517      0x00

ub1 kcvcpetb[6]                          @518      0x00

ub1 kcvcpetb[7]                          @519      0x00

BBED> p kcvfhcpc

ub4 kcvfhcpc                                @140      0x00000032 --

BBED> p kcvfhccc

ub4 kcvfhccc                                @148      0x00000031 --

--修改以上几个数据就可以了

BBED> set offset 484 count 16

OFFSET          484

COUNT           16

BBED> dump /v

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1       Offsets:  484 to  499  Dba:0x00400001

-------------------------------------------------------

27dc0d00 00005a00 8ae72f2d 01000000 l ‘?...Z..?-....

<16 bytes per line>‘

--一下是具体的实验步骤

--shutdown database and reopen to mount

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

Total System Global Area  184549376 bytes

Fixed Size                  1218412 bytes

Variable Size              92276884 bytes

Database Buffers           88080384 bytes

Redo Buffers                2973696 bytes

Database mounted.

--update datafile header

BBED> show

FILE#           1

BLOCK#          1

OFFSET          0

DBA             0x00400001 (4194305 1,1)

FILENAME        /u01/app/oracle/oradata/test/block.dbf

BIFILE          bifile.bbd

LISTFILE        list

BLOCKSIZE       8192

MODE            Edit

EDIT            Unrecoverable

IBASE           Dec

OBASE           Dec

WIDTH           80

COUNT           512

LOGFILE         log.bbd

SPOOL           No

BBED> p kcvfhckp

struct kcvfhckp, 36 bytes                   @484

struct kcvcpscn, 8 bytes                 @484

ub4 kscnbas                           @484      0x000df330

ub2 kscnwrp                           @488      0x0000

ub4 kcvcptim                             @492      0x2d3006c5

ub2 kcvcpthr                             @496      0x0001

union u, 12 bytes                        @500

struct kcvcprba, 12 bytes             @500

ub4 kcrbaseq                       @500      0x00000011

ub4 kcrbabno                       @504      0x00002da7

ub2 kcrbabof                       @508      0x0010

ub1 kcvcpetb[0]                          @512      0x02

ub1 kcvcpetb[1]                          @513      0x00

ub1 kcvcpetb[2]                          @514      0x00

ub1 kcvcpetb[3]                          @515      0x00

ub1 kcvcpetb[4]                          @516      0x00

ub1 kcvcpetb[5]                          @517      0x00

ub1 kcvcpetb[6]                          @518      0x00

ub1 kcvcpetb[7]                          @519      0x00

BBED> p kcvfhcpc

ub4 kcvfhcpc                                @140      0x00000033

BBED> p kcvfhccc

ub4 kcvfhccc                                @148      0x00000032

BBED> set offset 484 count 16

OFFSET          484

COUNT           16

BBED> dump /v

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1       Offsets:  484 to  499  Dba:0x00400001

-------------------------------------------------------

30f30d00 00000000 c506302d 01000a00 l 0?.....?0-....

<16 bytes per line>

BBED> modify /x 20

Warning: contents of previous BIFILE will be lost. Proceed? (Y/N) y

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  484 to  499           Dba:0x00400001

------------------------------------------------------------------------

20f30d00 00000000 c506302d 01000a00

<32 bytes per line>

BBED> set offset 492

OFFSET          492

BBED> dump

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  492 to  507           Dba:0x00400001

------------------------------------------------------------------------

c506302d 01000a00 11000000 a72d0000

<32 bytes per line>

BBED> modify /x c0

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  492 to  507           Dba:0x00400001

------------------------------------------------------------------------

c006302d 01000a00 11000000 a72d0000

<32 bytes per line>

BBED> set offset 140

OFFSET          140

BBED> dump

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  140 to  155           Dba:0x00400001

------------------------------------------------------------------------

33000000 ea63292d 32000000 00000000

<32 bytes per line>

BBED> modify /x 31

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  140 to  155           Dba:0x00400001

------------------------------------------------------------------------

31000000 ea63292d 32000000 00000000

<32 bytes per line>

BBED>  set offset 148

OFFSET          148

BBED> modify

BBED-00203: incomplete/malformed command

BBED> modify /x 30

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  148 to  163           Dba:0x00400001

------------------------------------------------------------------------

30000000 00000000 00000000 00000000

<32 bytes per line>

BBED> sum apply-------------------------------------------------------------------------------------

Check value for File 1, Block 1:

current = 0xa51f, required = 0xa51f

--alter database open

SQL> alter database open;

alter database open

*

ERROR at line 1:

ORA-01113: file 5 needs media recovery

ORA-01110: data file 5: ‘/u01/app/oracle/oradata/test/block.dbf‘

--modify the file header from system

BBED> set offset 484 count 16

OFFSET          484

COUNT           16

BBED> dump /v

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1       Offsets:  484 to  499  Dba:0x00400001

-------------------------------------------------------

30f30d00 00000000 c506302d 01000a00 l 0?.....?0-....

<16 bytes per line>

BBED> modify /x 20

Warning: contents of previous BIFILE will be lost. Proceed? (Y/N) y

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  484 to  499           Dba:0x00400001

------------------------------------------------------------------------

20f30d00 00000000 c506302d 01000a00

<32 bytes per line>

BBED> set offset 492

OFFSET          492

BBED> dump

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  492 to  507           Dba:0x00400001

------------------------------------------------------------------------

c506302d 01000a00 11000000 a72d0000

<32 bytes per line>

BBED> modify /x c0

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  492 to  507           Dba:0x00400001

------------------------------------------------------------------------

c006302d 01000a00 11000000 a72d0000

<32 bytes per line>

BBED> set offset 140

OFFSET          140

BBED> dump

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  140 to  155           Dba:0x00400001

------------------------------------------------------------------------

33000000 ea63292d 32000000 00000000

<32 bytes per line>

BBED> modify /x 31

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  140 to  155           Dba:0x00400001

------------------------------------------------------------------------

31000000 ea63292d 32000000 00000000

<32 bytes per line>

BBED>  set offset 148

OFFSET          148

BBED> modify

BBED-00203: incomplete/malformed command

BBED> modify /x 30

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  148 to  163           Dba:0x00400001

------------------------------------------------------------------------

30000000 00000000 00000000 00000000

<32 bytes per line>

BBED> sum apply

Check value for File 1, Block 1:

current = 0xa51f, required = 0xa51f

BBED> set offset 484

OFFSET          484

BBED> dump /v count 16

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1       Offsets:  484 to  499  Dba:0x00400001

-------------------------------------------------------

20f30d00 00000000 c006302d 01000a00 l  ?.....?0-....

<16 bytes per line>

BBED> modify /x 30

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  484 to  499           Dba:0x00400001

------------------------------------------------------------------------

30f30d00 00000000 c006302d 01000a00

<32 bytes per line>

BBED> set offset 492

OFFSET          492

BBED> dump /v

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1       Offsets:  492 to  507  Dba:0x00400001

-------------------------------------------------------

c006302d 01000a00 11000000 a72d0000 l ?0-........?..

<16 bytes per line>

BBED> modify /c5

BBED-00201: invalid switch (/c5)

BBED> modify /x c5

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  492 to  507           Dba:0x00400001

------------------------------------------------------------------------

c506302d 01000a00 11000000 a72d0000

<32 bytes per line>

BBED> set offset 140

OFFSET          140

BBED> dump /v

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1       Offsets:  140 to  155  Dba:0x00400001

-------------------------------------------------------

31000000 ea63292d 30000000 00000000 l 1...阠)-0.......

<16 bytes per line>

BBED> modify /x 33

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  140 to  155           Dba:0x00400001

------------------------------------------------------------------------

33000000 ea63292d 30000000 00000000

<32 bytes per line>

BBED> set offset 148

OFFSET          148

BBED> dump /v

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1       Offsets:  148 to  163  Dba:0x00400001

-------------------------------------------------------

30000000 00000000 00000000 00000000 l 0...............

<16 bytes per line>

BBED> modify /x 32

File: /u01/app/oracle/oradata/test/block.dbf (1)

Block: 1                Offsets:  148 to  163           Dba:0x00400001

------------------------------------------------------------------------

32000000 00000000 00000000 00000000

<32 bytes per line>

BBED> sum apply

Check value for File 1, Block 1:

current = 0xa50a, required = 0xa50a

--open the database

SQL> alter database open;

Database altered.

SQL>

--------------------------------------------------------------------

--数据有坏块 时候是否影响启动

--corrupt the block

BBED> p kcbh

struct kcbh, 20 bytes                       @0

ub1 type_kcbh                            @0        0x06

ub1 frmt_kcbh                            @1        0xa2

ub1 spare1_kcbh                          @2        0x00

ub1 spare2_kcbh                          @3        0x00

ub4 rdba_kcbh                            @4        0x0140000c

ub4 bas_kcbh                             @8        0x000de97d

ub2 wrp_kcbh                             @12       0x0000

ub1 seq_kcbh                             @14       0x02

ub1 flg_kcbh                             @15       0x04 (KCBHFCKV)

ub2 chkval_kcbh                          @16       0x1c9c

ub2 spare3_kcbh                          @18       0x0000

BBED> corrupt

Block marked media corrupt.

BBED> v

DBVERIFY - Verification starting

FILE = /u01/app/oracle/oradata/test/block.dbf

BLOCK = 12

Block Checking: DBA = 4194316, Block Type = KTB-managed data block

Found block already marked corrupted

DBVERIFY - Verification complete

Total Blocks Examined         : 1

Total Blocks Processed (Data) : 1

Total Blocks Failing   (Data) : 0

Total Blocks Processed (Index): 0

Total Blocks Failing   (Index): 0

Total Blocks Empty            : 0

Total Blocks Marked Corrupt   : 0

Total Blocks Influx           : 0

BBED> p kcbh

struct kcbh, 20 bytes                       @0

ub1 type_kcbh                            @0        0x06

ub1 frmt_kcbh                            @1        0xa2

ub1 spare1_kcbh                          @2        0x00

ub1 spare2_kcbh                          @3        0x00

ub4 rdba_kcbh                            @4        0x0040000c

ub4 bas_kcbh                             @8        0x00000000

ub2 wrp_kcbh                             @12       0x0000

ub1 seq_kcbh                             @14       0xff  --原来是02

ub1 flg_kcbh                             @15       0x04 (KCBHFCKV)

ub2 chkval_kcbh                          @16       0x1d91

ub2 spare3_kcbh                          @18       0x0000

BBED> sum apply

Check value for File 1, Block 12:

current = 0x1d91, required = 0x1d91

--reopen the database

SQL> alter database open;

Database altered.

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup

ORACLE instance started.

Total System Global Area  184549376 bytes

Fixed Size                  1218412 bytes

Variable Size              92276884 bytes

Database Buffers           88080384 bytes

Redo Buffers                2973696 bytes

Database mounted.

Database opened.

SQL>

--一般坏块不影响数据库的启动

--修改回来 用corropt修改不会来 奶奶的 还是简单改改ff吧  revert 可以的 注意呀 奶奶的

--跟踪文件里的错误

Bad header found during buffer read

Data in bad block:

type: 6 format: 2 rdba: 0x0040000c

last change scn: 0x0000.00000000 seq: 0x2 flg: 0x04

spare1: 0x0 spare2: 0x0 spare3: 0x0

consistency value in tail: 0x00000602

check value in block header: 0x1d91

computed block checksum: 0x0

Reread of rdba: 0x0140000c (file 5, block 12) found same corrupted data

-----------------------------------------------------------------------

修改file header (测)

时间: 2024-07-28 12:22:12

修改file header (测)的相关文章

oracle data file header replace(测)

SQL> create tablespace rm_tbs datafile 'f1.dbf' size 10m; Tablespace created. SQL> select file#,name from v$datafile; [[email protected] ~]$ rm /home/oracle/product/10g/dbs/f1.dbf [[email protected] ~]$ exit exit SQL> select file#,name from v$dat

sublime text 3插件---File Header配置

今天趁着有点闲工夫,准备好好配置一下sublime环境,毕竟天天见面. 首当其冲的就是FileHeader插件了,安装它之后就懒得配置过.(方便起见,以下简称FH) FH是一个为文件自动添加前缀字段的插件,比如这样: 上面的这些都是这个插件在文件创建时自动添加进去的. 为了配置这个插件,我找到了它的官方github地址: https://github.com/shiyanhui/FileHeader/blob/master/README.rst (上面的是README的地址) 通过README我

Oracle bbed 实用示例-----File Header Reset

一.查看当前环境 1.1 当前控制文件中的SCN号 [[email protected] ~]$ sqlplus /nolog SQL*Plus: Release 10.2.0.1.0 - Production on Sat Jan 17 10:11:34 2015 Copyright (c) 1982, 2005, Oracle. All rights reserved. SQL> conn /as sysdba Connected. SQL> col name format a65 SQL

【Oracle】IMP-00010: not a valid export file, header failed verification

别人给了一个Oracle文件,结果在导入的时候发现有问题,报错如下: IMP-00010: not a valid export file, header failed verification 在网上查询后发现,是版本数据库问题造成,使用UE编辑器打开dmp文件,看到首行如下: 上图表明该数据库版本为:Oracle12c的版本 使用SQL:select * from v$version 查询当前数据库版本 我们将dmp文件的TEXPORT:V12.02修改为V11.02,再次导入,完美解决问题

Freeze file header

SQL> select * from v$version where rownum=1; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production 我们可以使用alter tablespace ... begin backup将表空间置于联

Sharepoint 2013 修改Host header (修改主机名)

修改Host header 这个问题就比较简单了,之前介绍过如何使用IP访问你的站点.修改的位置相同.还记得你在新建 Web Application 的时候 有个Host Header吗 现在就修改你的那个设置. 操作如下. Application Management  ----- configure Alternate Access mappings ---打开后 单击你要修改的URL--在URL protocol and port 修改然后保存 就可以了. 如图3.1 注意要更改你的 Ac

改动file header (測)

--改动file header ------------------------------------------------------------------------- cd $ORACLE_H0ME/rdbms/lib ./bbed blockedit set filename '/u01/app/oracle/product/10.2.0/db_1/dbs/test01.dbf' show map /v p kcvfhckp BBED> modify /x 005a --拷贝 文件

Jenkins maven 构建乱码,修改file.encoding系统变量编码为UTF-8

一切都是windows的控制台默认编码GBK问题 情景: 使用jenkins构建,console 输出的中文乱码.代码编码格式是utf-8,因为Jenkins会默认读取当前系统的编码格式,导致构建日志乱码和selenium自动化测试输入的中文乱码. 控制台输出乱码 摸索 不能忍,果断百度一下,按照设置全局配置那里设置LANG :zn_CH.utf-8 无效. 在jenkins下的jenkins.xml设置什么启动为utf-8也是无效. 但是查找资料期间发现,jenkins系统管理的系统信息  想

js修改file控件的样式

<style type="text/css"> body { font-size: 14px; } input { vertical-align: middle; margin: 0; padding: 0; } .file-box { position: relative; width: 340px; padding-top: 20px; } .txt { height: 22px; border: 1px solid #cdcdcd; width: 180px; } .