Oracle数据库中的坏块的方法
来源:优易学  2011-11-8 11:41:20   【优易学:中国教育考试门户网】   资料下载   IT书店

 然后使用exp工具或者createtable as select的方法取出没有坏块数据,然后重建表,表上的索引和限制。  
  坏块的预先发现的方法  

  1. 如果要检测数据库中所有的表,可以利用exp工具导出整个数据库可以检测坏块。不过这个工具有一些缺陷,对以下情况的坏块是检测不出来的:  
  HWM以上的坏块是不会发现的  
  索引中存在的坏块是不会发现的  

  数据字典中的坏块是不会发现的  
  2. 如果只是对数据库中比较重要的表进行坏块检查,可以使用ANALYZE TABLE tablename VALIDATE STRUCTURE CASCADE 的方法来检测坏块,它执行坏块的检查,但是不会标记坏块为corrupt,检测的结果保存在USER_DUMP_DEST目录下的用户trace文件中。  

  3. 使用Oracle的专门工具dbv来检查坏块,具体的语法如下:  

关键字 说明 (默认) 
---------------------------------------------------- 
FILE 要验证的文件 (无) 
START 起始块 (文件的第一个块) 
END 结束块 (文件的最后一个块) 
BLOCKSIZE 逻辑块大小 (2048) 
LOGFILE 输出日志 (无) 
FEEDBACK 显示进度 (0) 
PARFILE 参数文件 (无) 
USERID 用户名/口令 (无) 
SEGMENT_ID 段ID (tsn.relfile.block) (无)  

例:  

Dbv file=system01.dbf blocksize=8192 
DBVERIFY: Release 9.2.0.5.0 - Production on 星期六 11月 27 15:29:13 2004 
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 
DBVERIFY - 验证正在开始 : FILE = system01.dbf 
DBVERIFY - 验证完成 
检查的页总数 :32000 
处理的页总数(数据):13261 
失败的页总数(数据):0 
处理的页总数(索引):2184 
失败的页总数(索引):0 
处理的页总数(其它):1369 
处理的总页数 (段) : 0 
失败的总页数 (段) : 0 
空的页总数 :15186 
记为损坏的总页数:0 
汇入的页总数 :0  

  注释:由于dbv要求file后面跟的必须是一个文件扩展名,所以如果用裸设备存储的,就必须使用ln链接裸设备到一个文件,然后再用dbv对这个链接文件进行检查。

上一页  [1] [2] [3] 

责任编辑:虫虫

文章搜索:
 相关文章
热点资讯
热门课程培训