暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
长安责任险Oracle offline文件bbed修复步骤.txt
288
3页
1次
2021-02-23
50墨值下载
###检查是否存在 offline 的文件
set linesize 200 pagesize 100
col name for a60
archive log list
select platform_name from v$database;
select * from v$transportable_platform;
select file#,name,status,checkpoint_change#,last_change# from v$datafile order
by 1;
select file#,name,status,checkpoint_change# from v$datafile_header order by 1;
select * from v$recover_file;
确认所有文件在 OS 上都存在
####编译 bbed
$cd $ORACLE_HOME/rdbms/lib
$ls -l bbed
如果没有,则编译
$make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed
####编译参数文件
$cd $ORACLE_HOME/rdbms/lib
$cat parfile.bbd
blocksize=8192
listfile=bbedlistfile.log
mode=edit
其中 bbedlistfile.log 的内容使用下列方式获取
select file#||' '||name||' '||bytes from v$datafile ;
$cat bbedlistfile.log
1 /oracle/oradata/testdb/testdb/system01.dbf 314572800
2 /oracle/oradata/testdb/testdb/undotbs01.dbf 209715200
3 /oracle/oradata/testdb/testdb/sysaux01.dbf 125829120
4 /oracle/oradata/testdb/testdb/users01.dbf 5242880
5 /oracle/oradata/testdb/testdb/shadow.dbf 52428800
##启动 bbed
$cd $ORACLE_HOME/rdbms/lib
$./bbed parfile=parfile.bbd
---密码 blockedit
info
set file 5 block 1---坏的文件
show
map
p kcvfh
p kcvfhckp
set file 4 block 1---好的文件
show
map
p kcvfh
p kcvfhckp
######冷备数据库
SQL>shutdown immediate
SQL>startup mount
冷备数据库
*********************************************************************
BBED> p kcvfhckp
struct kcvfhckp, 36 bytes @484
struct kcvcpscn, 8 bytes @484
ub4 kscnbas @484 0x0003c905-------->修改此处开始
的四个字节
ub2 kscnwrp @488 0x0000
ub4 kcvcptim @492 0x329a78ad
ub2 kcvcpthr @496 0x0001
union u, 12 bytes @500
struct kcvcprba, 12 bytes @500
ub4 kcrbaseq @500 0x0000000f-------->修改此处开始的
四个字节
ub4 kcrbabno @504 0x0000020b
ub2 kcrbabof @508 0x0010
ub1 kcvcpetb[0] @512 0x02
ub1 kcvcpetb[1] @513 0x00
ub1 kcvcpetb[2] @514 0x00
ub1 kcvcpetb[3] @515 0x00
ub1 kcvcpetb[4] @516 0x00
ub1 kcvcpetb[5] @517 0x00
ub1 kcvcpetb[6] @518 0x00
ub1 kcvcpetb[7] @519 0x00
*********************************************************************
--找到
set file 4 block 1---好的文件
dump /v offset 484 count 16
dump /v offset 500 count 16
set file 5 block 1---坏的文件
set offset 484
dump
modify /x cf6f0800 dba 5,1 offset 484
其中 cf6f0800 就是 dump 显示的内容,这个可能因为字节序的问题与 p kcvfhckp 的输出顺序相反,以
dump 为准
dump
d /v dba 5,1 offset 484 count 16
set offset 500
dump
modify /x 0b dba 5,1 offset 500
dump
d /v dba 5,1 offset 500 count 16
sum
sum apply
exit
############恢复并 online 数据文件
SQL>recover datafile 5
SQL>alter database datafile 5 online;
select file#,name,status,checkpoint_change#,last_change# from v$datafile order
by 1;
select file#,name,status,checkpoint_change# from v$datafile_header order by 1;
select * from v$recover_file;
SQL>alter database open;
of 3
50墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜