ITPUB??ì3
ITPUB论坛 » Oracle数据库管理 » 请问如何模拟块损坏

标题: [精华] 请问如何模拟块损坏
离线 西门吹牛
高级会员


精华贴数 4
个人空间 0
技术积分 12711 (90)
社区积分 2663 (457)
注册日期 2002-4-29
论坛徽章:3
会员2007贡献徽章会员2006贡献徽章授权会员   
      

发表于 2004-3-9 10:57 
谢谢eygle,回答的很详细。
我试验一下。


__________________
春莺啼岸柳弄春晴,柳弄春晴夜月明。明月夜晴春弄柳,晴春弄柳岸啼莺。夏香莲碧水动风凉,水动风凉夏日长。长日夏凉风动水,凉风动水碧莲香。秋秋江楚雁宿沙洲,雁宿沙洲浅水流。流水浅洲沙宿雁,洲沙宿雁楚江秋。冬红炉透炭炙寒风,炭炙寒风御隆冬。冬隆御风寒炙炭,风寒炙炭透炉红。
只看该作者    顶部
离线 chenyajun3
一般会员



精华贴数 0
个人空间 0
技术积分 138 (12615)
社区积分 1 (33414)
注册日期 2003-4-10
论坛徽章:0
      
      

发表于 2004-3-9 22:18 
请问BBED是个什么工具,在我的win2k,9i中有么,还是要单独弄?


只看该作者    顶部
离线 l2g32003
LiGuang


精华贴数 2
个人空间 0
技术积分 1176 (1463)
社区积分 604 (1214)
注册日期 2003-4-25
论坛徽章:2
会员2006贡献徽章授权会员    
      

发表于 2004-3-9 22:51 
用编辑器打开 datafile 以 8192 字节为一大小(db 的block是 8192)
下面是一个 block 的开始的 20个字节和结尾的 4 个字节
06 02 00 00 08 00 c0 02 6c 43 0d 00 00 00 01 02
00 00 00 00    -- block head

01 06 6c 43    -- block tail   这里有 scn(6c 43) 的情况和 block (06)的类型   
                                (01) 和 head 的 seq: 0x01 对应
只要改block尾部的4个字节中的或block开始的对应字节任何一个就一定会有 ora-1578
但如果数据库有 ora-1578的 error不一定是这样引起的

btw : UE不是很好 用winhex吧 不错喔


__________________
jesse livermore巴鲁克杰伊.古尔德-----------------------------------------授权会员 的徽章怎么像饭盒
只看该作者    顶部
离线 Kamus
版主


精华贴数 51
个人空间 300
技术积分 46334 (14)
社区积分 3554 (365)
注册日期 2002-5-26
论坛徽章:30
现任管理团队成员2007年度ITPUB最佳技术原创精华ITPUB元老Heart of PUBITPUB北京九华山庄2008年会纪念徽章管理团队2007贡献徽章
参与2007年甲骨文全球大会(中国上海)纪念ITPUB北京香山2007年会纪念徽章管理团队2006纪念徽章会员2007贡献徽章会员2006贡献徽章授权会员

发表于 2004-3-9 23:21 


QUOTE:
最初由 chenyajun3 发布
请问BBED是个什么工具,在我的win2k,9i中有么,还是要单独弄?

BBED在windows版本中自带,如果是UNIX下面则需要手动编译:
[zhangleyi@fedora lib]$ make -f ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed

Linking BBED utility (bbed)
rm -f /u01/oracle/product/10.1/bin/bbed
gcc -o /u01/oracle/product/10.1/bin/bbed -L/u01/oracle/product/10.1/rdbms/lib/ -L/u01/oracle/product/10.1/lib/ -L/u01/oracle/product/10.1/lib/stubs/  /u01/oracle/product/10.1/lib/s0main.o /u01/oracle/product/10.1/rdbms/lib/ssbbded.o /u01/oracle/product/10.1/rdbms/lib/sbbdpt.o `cat /u01/oracle/product/10.1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 /u01/oracle/product/10.1/rdbms/lib/defopt.o -ldbtools10 -lclntsh  `cat /u01/oracle/product/10.1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /u01/oracle/product/10.1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10 -lmm  -lcore10 -lxml10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat /u01/oracle/product/10.1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /u01/oracle/product/10.1/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10    -lcore10 -lxml10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10  -lcore10 -lxml10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10   `cat /u01/oracle/product/10.1/lib/sysliblist` -Wl,-rpath,/u01/oracle/product/10.1/lib -lm    `cat /u01/oracle/product/10.1/lib/sysliblist` -ldl -lm   -L/u01/oracle/product/10.1/lib
[zhangleyi@fedora lib]$ cd /u01/oracle/product/10.1/bin
[zhangleyi@fedora bin]$ ls bbed
bbed

bbed运行是需要密码的。

有兴趣的可以看下面的连接
http://www.fors.com/velpuri2/Oracle%20block%20structure/BBED


__________________
有事情请发Gmail邮箱,站内IM可能不能及时回复。    

***Chanel [K]***

从明天起, 做一个幸福的人  
喂马, 劈柴, 周游世界  
从明天起, 关心粮食和蔬菜  
我有一所房子 面朝大海, 春暖花开
只看该作者    顶部
离线 eygle
天下有雪


精华贴数 65
个人空间 0
技术积分 206494 (1)
社区积分 6443 (221)
注册日期 2001-10-8
论坛徽章:56
现任管理团队成员2007年度ITPUB杰出贡献ITPUB长老会成员ITPUB元老ITPUB维基人授权会员
生肖徽章2007版:鼠2008年新春纪念徽章生肖徽章2007版:猴生肖徽章2007版:龙ITPUB新首页上线纪念徽章生肖徽章:蛇

发表于 2004-3-9 23:46 
BBED在windows 8i中在$ORACLE_HOME/bin下可以找到
9i中似乎未随软件发布


__________________
只看该作者    顶部
离线 shanfei
饭后百步走


精华贴数 0
个人空间 0
技术积分 1361 (1221)
社区积分 58 (4393)
注册日期 2002-2-5
论坛徽章:3
ITPUB元老会员2006贡献徽章授权会员   
      

发表于 2004-3-10 00:14 
eygle讲的真详细呀,我这下可以对公司的数据库搞搞小修改,让大家找不着北,呵呵。


只看该作者    顶部
离线 yangtingkun
版主


精华贴数 12
个人空间 22846
技术积分 47429 (12)
社区积分 3136 (416)
注册日期 2001-12-29
论坛徽章:105
现任管理团队成员NBA季后赛大富翁2008北京奥运纪念徽章:拳击2008北京奥运纪念徽章:柔道2008北京奥运纪念徽章:皮划艇静水2008北京奥运纪念徽章:体操
2008北京奥运纪念徽章:曲棍球2008北京奥运纪念徽章:篮球2008北京奥运纪念徽章:举重2008北京奥运纪念徽章:自行车2008北京奥运纪念徽章:网球2008北京奥运纪念徽章:田径

发表于 2004-3-10 08:59 
好办法
我前一阵看到dbms_space_admin包时还在发愁没有办法测试,回去建个测试库搞一搞。


__________________
学习ORACLE最大的障碍是什么——浮躁

http://yangtingkun.itpub.net

个人BLOG文章索引:http://www.itpub.net/showthread.php?s=&threadid=699527

11g的一点研究:http://www.itpub.net/852861.html
只看该作者    顶部
离线 西门吹牛
高级会员


精华贴数 4
个人空间 0
技术积分 12711 (90)
社区积分 2663 (457)
注册日期 2002-4-29
论坛徽章:3
会员2007贡献徽章会员2006贡献徽章授权会员   
      

发表于 2004-3-10 09:58 
按照eygle的实验我是成功了,但是有个问题。

我们可以设置内部事件,使exp跳过这些损坏的block
ALTER SYSTEM SET EVENTS='10231 trace name context forever,level 10' ;

设置完这个事件后,对数据库有没有其他的影响?


__________________
春莺啼岸柳弄春晴,柳弄春晴夜月明。明月夜晴春弄柳,晴春弄柳岸啼莺。夏香莲碧水动风凉,水动风凉夏日长。长日夏凉风动水,凉风动水碧莲香。秋秋江楚雁宿沙洲,雁宿沙洲浅水流。流水浅洲沙宿雁,洲沙宿雁楚江秋。冬红炉透炭炙寒风,炭炙寒风御隆冬。冬隆御风寒炙炭,风寒炙炭透炉红。
只看该作者    顶部
离线 oldv
高级会员



精华贴数 1
个人空间 0
技术积分 1921 (817)
社区积分 23 (6888)
注册日期 2003-8-5
论坛徽章:10
会员2006贡献徽章铁扇公主授权会员行业板块每日发贴之星  
      

发表于 2004-3-10 10:00 
好啊,酣畅淋漓的好!

好啊,酣畅淋漓的好!


__________________
心态平和万事顺,切勿浮躁一根筋。
只看该作者    顶部
离线 eygle
天下有雪


精华贴数 65
个人空间 0
技术积分 206494 (1)
社区积分 6443 (221)
注册日期 2001-10-8
论坛徽章:56
现任管理团队成员2007年度ITPUB杰出贡献ITPUB长老会成员ITPUB元老ITPUB维基人授权会员
生肖徽章2007版:鼠2008年新春纪念徽章生肖徽章2007版:猴生肖徽章2007版:龙ITPUB新首页上线纪念徽章生肖徽章:蛇

发表于 2004-3-10 10:14 


QUOTE:
最初由 西门吹牛 发布
按照eygle的实验我是成功了,但是有个问题。

我们可以设置内部事件,使exp跳过这些损坏的block
ALTER SYSTEM SET EVENTS='10231 trace name context forever,level 10' ;

设置完这个事件后,对数据库有没有其他的影响?


10231事件指定数据库在进行全表扫描时跳过损坏的块
而不是给出ORA-1578 错误

对数据库没有影响
在完成恢复以后,你可以取消该事件设置


__________________
只看该作者    顶部
相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问