日归档:2014 年 3 月 3 日

Exadata上验证ASM磁盘头备份的位置

我们都知道,从Oracle 10.2.0.5开始,ASM磁盘会自动备份磁盘头块,备份块的位置在第2个AU的倒数第2个块上。 通常,缺省情况下,AU SIZE是1M,每个AU可以有256个block(每个block 4k),256*4k()=1M 因此,第2个AU同样存放了256个block(0~255),其备份块的位置为 au=1 blkn=254(au和block都是从0开始计数的) 具体的恢复案例,可以参考: ASM磁盘头被fdisk损坏的修复过程 那么在exadata上,缺省的AU是4M,也就是每个AU可以存储 1024个block,即 block 0 ~ block 1023 那么第二个AU的倒数第二个block就是 au=1 blkn=1022 ( au和block都是从0开始计数的 ) 我们来检测一下是不是这样: 注意: 这里kfed命令中,需要指定ausz=4m,否则kfed缺省按照1M来计算,那么结果就是错误的了: 在kfed中指定ausz=4m,检测结果: 经过检查,我们发现,这个规律在exadata上依然有效,ASM除了缺省4M的AU,其余没什么变化,O(∩_∩)O哈哈~ 顺便介绍一个小方法,快速计算备份块的位置:(该方法根据ASM Support Guy修改而来)

发表在 ASM, 内部机制 | 标签为 , , | 一条评论