mysql可以在amd上用么_oracle kfed 和 amdu

备份asm disk header

kfed 或者 dd

kfed read /dev/asm_data1 > asm_data1.txt &&

kfed read /dev/asm_data2 > asm_data2.txt &&

kfed read /dev/asm_data3 > asm_data3.txt

dd if=/dev/asm_data1 of=/home/grid/asm_data1.dump bs=4096 count=1 &&

dd if=/dev/asm_data2 of=/home/grid/asm_data2.dump bs=4096 count=1 &&

dd if=/dev/asm_data3 of=/home/grid/asm_data3.dump bs=4096 count=1

模拟asm disk header头损坏

dd if=/dev/zero of=/dev/asm_data1  bs=4096 count=1

重新挂载报错

SQL> alter diskgroup data dismount;

Diskgroup altered.

SQL> alter diskgroup data mount;

alter diskgroup data mount

*

ERROR at line 1:

ORA-15032: not all alterations performed

ORA-15040: diskgroup is incomplete

ORA-15042: ASM disk "0" is missing from group number "2"

[+ASM1]@ht01[/home/grid]$dd if=/dev/zero of=/dev/asm_data1 bs=4096 count=1

1+0 records in

1+0 records out

4096 bytes (4.1 kB) copied, 0.000907187 s, 4.5 MB/s

kfed 读报错

[+ASM1]@ht01[/home/grid]$kfed read /dev/asm_data1

kfbh.endian: 0 ; 0x000: 0x00

kfbh.hard: 0 ; 0x001: 0x00

kfbh.type: 0 ; 0x002: KFBTYP_INVALID

kfbh.datfmt: 0 ; 0x003: 0x00

kfbh.block.blk: 0 ; 0x004: blk=0

kfbh.block.obj: 0 ; 0x008: file=0

kfbh.check: 0 ; 0x00c: 0x00000000

kfbh.fcn.base: 0 ; 0x010: 0x00000000

kfbh.fcn.wrap: 0 ; 0x014: 0x00000000

kfbh.spare1: 0 ; 0x018: 0x00000000

kfbh.spare2: 0 ; 0x01c: 0x00000000

7F06DD408400 00000000 00000000 00000000 00000000 [................]

Repeat 255 times

KFED-00322: Invalid content encountered during block traversal: [kfbtTraverseBlock][Invalid OSM block type][][0]

amdu 抽取报错

[+ASM1]@ht01[/home/grid]$amdu -diskstring ' /dev/asm_data*' -extract data.259

amdu_2019_11_10_19_27_12/

AMDU-00204: Disk N0002 is in currently mounted diskgroup DATA

AMDU-00201: Disk N0002: '/dev/asm_data2'

AMDU-00204: Disk N0003 is in currently mounted diskgroup DATA

AMDU-00201: Disk N0003: '/dev/asm_data3'

asm disk header 3种修复方式

kfed repair /dev/asm_data1

kfed write /dev/asm_data1 te=asm_data1.txt

dd if=/home/grid/asm_data1.dump of=/dev/asm_data1 bs=4096 count=1

抽取数据时候可以先抽取control,control信息记录在alert日志里

amdu -diskstring '/dev/asm_data*' -extract data.259

data.259 有磁盘组名称和file_number组成.

select name from v$datafile;

可以以此抽出

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值