联系:手机/微信(+86 17813235971) QQ(107644445)
作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
ORACLE 12C的测试版出来了,对于习惯了使用bbed(ORACLE 手术刀)的人来说,12C是否继续被支持是一个很让人关注的问题,通过本实验测试,12C继续支持bbed,很多艰难的数据库恢复依然可以通过bbed来实现,也从侧面说明,ORACLE 12C在块的结构上还依然和以往版本相似
数据库信息
[oracle@xifenfei ~]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.0.2 Beta on Thu Dec 13 09:55:35 2012 Copyright (c) 1982, 2012, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.0.2 - 64bit With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select name from v$datafile where rownum=1; NAME -------------------------------------------------------------------------------- /u01/app/oracle/oradata/xifenfei/system01.dbf SQL> select * from v$version; BANNER CON_ID -------------------------------------------------------------------------------- ---------- Oracle Database 12c Enterprise Edition Release 12.1.0.0.2 - 64bit 0 PL/SQL Release 12.1.0.0.2 0 CORE 12.1.0.0.2 0 TNS for Linux: Version 12.1.0.0.2 0 NLSRTL Version 12.1.0.0.2 0 SQL> exit Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.0.2 - 64bit With the Partitioning, OLAP, Data Mining and Real Application Testing options
12C中编译bbed
[oracle@xifenfei bbed_64]$ ls -l total 32 -rw-r--r-- 1 oracle oinstall 8704 Apr 20 2010 bbedus.msb -rw-r--r-- 1 oracle oinstall 10270 Jul 25 2000 bbedus.msg -rw-r--r-- 1 oracle oinstall 3976 Apr 20 2010 sbbdpt.o -rw-r--r-- 1 oracle oinstall 3306 Apr 20 2010 ssbbded.o [oracle@xifenfei ~]$ cd /u01/app/oracle/product/12.1/db_1/rdbms/lib [oracle@xifenfei lib]$ cp ~/bbed_64/s* ./ [oracle@xifenfei lib]$ cd ../ [oracle@xifenfei rdbms]$ cd /u01/app/oracle/product/12.1/db_1/rdbms/mesg [oracle@xifenfei mesg]$ cp ~/bbed_64/bbedus.ms* ./ [oracle@xifenfei ~]$ cd /u01/app/oracle/product/12.1/db_1/rdbms/lib [oracle@xifenfei lib]$ make -f ins_rdbms.mk /u01/app/oracle/product/12.1/db_1/rdbms/lib/bbed Linking BBED utility (bbed) rm -f /u01/app/oracle/product/12.1/db_1/rdbms/lib/bbed /u01/app/oracle/product/12.1/db_1/bin/orald -o /u01/app/oracle/product/12.1/db_1/rdbms/lib/bbed ………… /u01/app/oracle/product/12.1/db_1/lib/sysliblist` -ldl -lm -L/u01/app/oracle/product/12.1/db_1/lib [oracle@xifenfei lib]$ mv bbed /u01/app/oracle/product/12.1/db_1/bin/
测试12C中bbed
[oracle@xifenfei ~]$ bbed Password: BBED: Release 2.0.0.0.0 - Limited Production on Thu Dec 13 09:58:16 2012 Copyright (c) 1982, 2012, Oracle and/or its affiliates. All rights reserved. ************* !!! For Oracle Internal Use only !!! *************** BBED> set filename '/u01/app/oracle/oradata/xifenfei/system01.dbf' FILENAME /u01/app/oracle/oradata/xifenfei/system01.dbf BBED> show FILE# 0 BLOCK# 1 OFFSET 0 DBA 0x00000000 (0 0,1) FILENAME /u01/app/oracle/oradata/xifenfei/system01.dbf BIFILE bifile.bbd LISTFILE BLOCKSIZE 8192 MODE Browse EDIT Unrecoverable IBASE Dec OBASE Dec WIDTH 80 COUNT 512 LOGFILE log.bbd SPOOL No BBED> map File: /u01/app/oracle/oradata/xifenfei/system01.dbf (0) Block: 1 Dba:0x00000000 ------------------------------------------------------------ Data File Header struct kcvfh, 1112 bytes @0 ub4 tailchk @8188 BBED> p kcvfhbfh struct kcvfhbfh, 20 bytes @0 ub1 type_kcbh @0 0x0b ub1 frmt_kcbh @1 0xa2 ub1 spare1_kcbh @2 0x00 ub1 spare2_kcbh @3 0x00 ub4 rdba_kcbh @4 0x00400001 ub4 bas_kcbh @8 0x00000000 ub2 wrp_kcbh @12 0x0000 ub1 seq_kcbh @14 0x01 ub1 flg_kcbh @15 0x04 (KCBHFCKV) ub2 chkval_kcbh @16 0x21a8 ub2 spare3_kcbh @18 0x0000 BBED> set block 1233 BLOCK# 1233 BBED> map File: /u01/app/oracle/oradata/xifenfei/system01.dbf (0) Block: 1233 Dba:0x00000000 ------------------------------------------------------------ KTB Data Block (Index Leaf) struct kcbh, 20 bytes @0 struct ktbbh, 72 bytes @20 struct kdxle, 32 bytes @92 sb2 kd_off[517] @124 ub1 freespace[302] @1158 ub1 rowdata[6660] @1460 ub4 tailchk @8188
/bbed_64/里的bbedus.ms是从哪个版本拷的?