BBED 修改rdba方式对不对?
本帖最后由 疾风狼 于 2014-12-26 16:55 编辑问题:是不是BBED rdba修改的不对? 实验过程参照:http://www.xifenfei.com/5026.html软硬件环境Oracle Database 11g EnterpriseEdition Release 11.2.0.1.0 - ProductionWith the Partitioning, OLAP, DataMining and Real Application Testing optionsORACLE_HOME =/u01/app/oracle/product/11.2.0/db_1System name:LinuxNode name: LinuxRelease: 2.6.18-194.el5Version: #1 SMP Tue Mar 16 21:52:43 EDT 2010Machine: i686Instance name: fishRedo thread mounted by thisinstance: 1Oracle process number: 19Unix process pid: 19954, image:oracle@Linux (TNS V1-V3)实验出错在:upgrade模式启动数据库:
SQL*Plus:Release 11.2.0.1.0 Production on Thu Nov 13 13:42:01 2014 Copyright(c) 1982, 2009, Oracle.All rightsreserved. Connectedto an idle instance. 13:42:01SYS # fish >startup mount;ORACLEinstance started. TotalSystem Global Area418484224 bytesFixedSize 1336932 bytesVariableSize 276826524 bytesDatabaseBuffers 134217728 bytesRedoBuffers 6103040 bytesDatabasemounted.13:42:21SYS # fish >alter database Open upgrade;alterdatabase Open upgrade*ERROR atline 1:ORA-01092:ORACLE instance terminated. Disconnection forcedORA-00704:bootstrap process failureORA-01578:ORACLE data block corrupted (file # 1, block # 520)ORA-01110:data file 1: '/u01/app/oracle/oradata/fish/system01.dbf'ProcessID: 20139SessionID: 1 Serial number: 5创建bootstarp$替换表(xifenfei) 获取rba15:36:24 SYS # fish > select header_file,header_blockfrom dba_segments where segment_name='XIFENFEI';
HEADER_FILE HEADER_BLOCK----------- ------------1 92480
15:36:24 SYS # fish >SELECT TO_CHAR(92480,'XXXXXXX')FROM DUAL;
TO_CHAR(--------16940
Elapsed: 00:00:00.09--对应rdba为00416940 bbed修改root rdbaBBED>set filename=/u01/app/oracle/oradata/fish/system01.dbf
BBED>
BBED> set count 32
COUNT 32
BBED>
BBED> d
File: /u01/app/oracle/oradata/fish/system01.dbf (1)
Block: 520 Offsets: 4 to 35 Dba:0x00400208
------------------------------------------------------------------------
08024000 51020000 00000104 43e40000 00000000 00000000 00000000 00000000
<32 bytes per line>
BBED> m /x 406941
File: /u01/app/oracle/oradata/fish/system01.dbf (1)
Block: 520 Offsets: 4 to 35 Dba:0x00400208
------------------------------------------------------------------------
40694100 51020000 00000104 43e40000 00000000 00000000 00000000 00000000
<32 bytes per line>
BBED> sum apply
Check value for File 1, Block 520:
current = 0x8f0a, required = 0x8f0a
BBED> d
File: /u01/app/oracle/oradata/fish/system01.dbf (1)
Block: 520 Offsets: 4 to 35 Dba:0x00400208
------------------------------------------------------------------------
40694100 51020000 00000104 0a8f0000 00000000 00000000 00000000 00000000
<32 bytes per line>
BBED> prdba_kcbh
ub4 rdba_kcbh @4 0x00416940 从你这里看出来
ORA-01578:ORACLE data block corrupted (file # 1, block # 520) 证明数据文件通过bbed修改为坏块了
你可以通过bbed 进去
set blocksize 8192
set file 1 block 520
verify
看看是否坏块
或者bbed检查是否坏块
建议使用备份system进一步测试,在启动数据库前,确保bbed 修改block成功 xifenfei 发表于 2014-12-26 18:02
从你这里看出来
ORA-01578:ORACLE data block corrupted (file # 1, block # 520) 证明数据文件通过bbed ...
已经做了备份。在试试实验。 疾风狼 发表于 2014-12-26 18:14
已经做了备份。在试试实验。
有结果及时反馈
页:
[1]