下载

0下载券

加入VIP
  • 专属下载券
  • 上传内容扩展
  • 资料优先审核
  • 免费资料无限下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 Oracle数据块损坏恢复总结

Oracle数据块损坏恢复总结.doc

Oracle数据块损坏恢复总结

宋友仁
2017-11-10 0人阅读 举报 0 0 0 暂无简介

简介:本文档为《Oracle数据块损坏恢复总结doc》,可适用于IT/计算机领域

Oracle数据块损坏恢复总结在恢复前使用DBV命令检查数据文件是否存在坏块dbvfile=d:oracleoradatamydbRONLYDBFblocksize=查看数据坏块所在数据文件号及块号可以对表进行一次全表扫描如:selectcount(*)fromtablename没有备份的情况下:、使用expimp恢复在这种情况下肯定会造成数据的丢失在这种情况下应采取将数据导出然后重建表再进行导入的方法来尽量恢复损坏数据块中的数据但是在有坏块的情况下是不允许导出的如下命令:Exptesttestfile=tdmptables=t导出命令在执行中会报ORA错误在这错误提示中会提示那个文件号的文件以及这个文件中的哪个块被损坏如:ORA:ORACLE数据块损坏(文件号块号)针对以上的提示首先查询那些对象被损坏:Selecttablespacename,segmenttype,owner,segmentnameFromdbaextentsWherefileid=andbetweenblockidandblockidblocks如果被损坏的块是索引通常可以通过索引重建来解决如果损坏的是数据(segmenttype为table)那么通过设置如下内部事件使得Exp操作跳过坏块。Altersessionsetevents=’tracenamecontextforever,level’然后重新执行导出命令导出相关的表然后执行DropTable命令删除相关表之后重建表最后导入数据。、使用DBMSREPAIR恢复用DBMSREPAIR当然也会丢失数据。这里不做详细的介绍有兴趣的可以查看oracle的在线文档使用Rman进行恢复:首先要存在Rman的最新备份集然后执行如下命令:RMAN>backupvalidatedatafile检查号数据文件是否存在坏块执行查询:select*fromv$databaseblockcorruptionwherefile#=如果号文件存在坏块的话那么将在结果集中有所显示会显示损坏的块号根据显示结果执行如下命令进行恢复:RMAN>blockrecoverdatafileblockfrombackupset该命令执行后即可恢复坏块并且不会造成数据丢失但是要求数据库必须要运行在归档模式下否则RMAN无法发挥作用而且通过RMAN做过最新的数据库备份使用bbed恢复使用bbed恢复时必须有数据文件的拷贝。bbed就是英文blockbrowseedit的缩写用来直接查看和修改数据文件数据的一个工具。在windows和linux上面都有但在linux下需要编译:然后把$ORACLEHOMErdbmslib加到环境变量的PATH里面就可以直接在命令中bbed了。BBED的缺省口令为blockedit,ForOracleInternalUseonly请谨慎使用Oracle不做技术支持。oracletestoracle$cd$ORACLEHOMErdbmsliboracletestlib$makefinsrdbmsmk$ORACLEHOMErdbmslibbbed进入bbed后可以使用help查看帮助:BBED>help来源:网络编辑:联动北方技术论坛

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

评分:

/3

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利