联系:手机/微信(+86 17813235971) QQ(107644445)
作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
有客户执行drop disk磁盘组操作之后,然后立刻从oracle asmlib层面执行了oracleasm deletedisk,并且在操作系统层面delete partition(删除磁盘分区),导致磁盘组直接dismount
Tue Nov 26 16:44:04 2024SQL> alter diskgroup data drop disk DATA_0008 NOTE: GroupBlock outside rolling migration privileged regionTue Nov 26 08:44:05 2024NOTE: stopping process ARB0NOTE: rebalance interrupted for group 2/0x28dec0d5 (DATA)NOTE: requesting all-instance membership refresh for group=2NOTE: membership refresh pending for group 2/0x28dec0d5 (DATA)Tue Nov 26 08:44:14 2024GMON querying group 2 at 48 for pid 18, osid 27385SUCCESS: refreshed membership for 2/0x28dec0d5 (DATA)SUCCESS: alter diskgroup data drop disk DATA_0008NOTE: starting rebalance of group 2/0x28dec0d5 (DATA) at power 2Starting background process ARB0Tue Nov 26 08:44:14 2024ARB0 started with pid=38, OS id=56987 NOTE: assigning ARB0 to group 2/0x28dec0d5 (DATA) with 2 parallel I/OsTue Nov 26 08:44:17 2024NOTE: Attempting voting file refresh on diskgroup DATANOTE: Refresh completed on diskgroup DATA. No voting file found.Tue Nov 26 08:44:57 2024cellip.ora not found.Tue Nov 26 17:08:46 2024SQL> alter diskgroup data drop disk DATA_0008 ORA-15032: not all alterations performedORA-15071: ASM disk "DATA_0008" is already being droppedERROR: alter diskgroup data drop disk DATA_0008Tue Nov 26 17:10:30 2024SQL> alter diskgroup data drop disk DATA_0008 ORA-15032: not all alterations performedORA-15071: ASM disk "DATA_0008" is already being droppedERROR: alter diskgroup data drop disk DATA_0008Tue Nov 26 09:34:38 2024WARNING: cache read a corrupt block:group=2(DATA) dsk=8 blk=98 disk=8 (DATA_0008) incarn=3911069755 au=0 blk=98 count=1Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_arb0_56987.trc:ORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]NOTE: a corrupted block from group DATA was dumped to /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_arb0_56987.trcWARNING:cache read (retry) a corrupt block:group=2(DATA) dsk=8 blk=98 disk=8(DATA_0008)incarn=3911069755 au=0 blk=98 count=1Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_arb0_56987.trc:ORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]ORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]ERROR: cache failed to read group=2(DATA) dsk=8 blk=98 from disk(s): 8(DATA_0008)ORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]ORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]NOTE: cache initiating offline of disk 8 group DATANOTE: process _arb0_+asm1(56987)initiating offline of disk 8.3911069755 (DATA_0008) with mask 0x7e in group 2NOTE: initiating PST update: grp = 2, dsk = 8/0xe91e303b, mask = 0x6a, op = clearTue Nov 26 09:34:38 2024GMON updating disk modes for group 2 at 49 for pid 38, osid 56987ERROR: Disk 8 cannot be offlined, since diskgroup has external redundancy.ERROR: too many offline disks in PST (grp 2)Tue Nov 26 09:34:38 2024NOTE: cache dismounting (not clean) group 2/0x28DEC0D5 (DATA) WARNING: Offline for disk DATA_0008 in mode 0x7f failed.NOTE: messaging CKPT to quiesce pins Unix process pid: 89645, image: oracle@ahptdb5 (B000)Tue Nov 26 09:34:38 2024NOTE: halting all I/Os to diskgroup 2 (DATA)Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_arb0_56987.trc (incident=413105):ORA-15335: ASM metadata corruption detected in disk group 'DATA'ORA-15130: diskgroup "DATA" is being dismountedORA-15066: offlining disk "DATA_0008" in group "DATA" may result in a data lossORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]ORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]Tue Nov 26 09:34:39 2024ERROR: ORA-15130 in COD recovery for diskgroup 2/0x28dec0d5 (DATA)ERROR: ORA-15130 thrown in RBAL for group number 2Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_rbal_27385.trc:ORA-15130: diskgroup "DATA" is being dismountedERROR: ORA-15335 thrown in ARB0 for group number 2Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_arb0_56987.trc:ORA-15335: ASM metadata corruption detected in disk group 'DATA'ORA-15130: diskgroup "DATA" is being dismountedORA-15066: offlining disk "DATA_0008" in group "DATA" may result in a data lossORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]ORA-15196: invalid ASM block header [kfc.c:26368] [endian_kfbh] [2147483656] [98] [0 != 1]NOTE: stopping process ARB0Tue Nov 26 09:34:40 2024NOTE: LGWR doing non-clean dismount of group 2 (DATA)NOTE: LGWR sync ABA=716.2684 last written ABA 716.2684 |
通过重新分区,并且kfed repair修复磁盘头操作之后,重新mount磁盘组报错
SQL> alter diskgroup data mountNOTE: cache registered group DATA number=2 incarn=0x73bec220NOTE: cache began mount (first) of group DATA number=2 incarn=0x73bec220NOTE: Assigning number (2,16) to disk (/dev/oracleasm/disks/DATA208)NOTE: Assigning number (2,15) to disk (/dev/oracleasm/disks/DATA207)NOTE: Assigning number (2,14) to disk (/dev/oracleasm/disks/DATA206)NOTE: Assigning number (2,13) to disk (/dev/oracleasm/disks/DATA205)NOTE: Assigning number (2,12) to disk (/dev/oracleasm/disks/DATA204)NOTE: Assigning number (2,11) to disk (/dev/oracleasm/disks/DATA203)NOTE: Assigning number (2,10) to disk (/dev/oracleasm/disks/DATA202)NOTE: Assigning number (2,9) to disk (/dev/oracleasm/disks/DATA201)NOTE: Assigning number (2,6) to disk (/dev/oracleasm/disks/DATA07)NOTE: Assigning number (2,5) to disk (/dev/oracleasm/disks/DATA06)NOTE: Assigning number (2,4) to disk (/dev/oracleasm/disks/DATA05)NOTE: Assigning number (2,0) to disk (/dev/oracleasm/disks/DATA01)NOTE: Assigning number (2,3) to disk (/dev/oracleasm/disks/DATA04)NOTE: Assigning number (2,2) to disk (/dev/oracleasm/disks/DATA03)NOTE: Assigning number (2,1) to disk (/dev/oracleasm/disks/DATA02)NOTE: Assigning number (2,8) to disk (/dev/oracleasm/disks/DATA101)Tue Nov 26 11:48:22 2024NOTE: GMON heartbeating for grp 2GMON querying group 2 at 83 for pid 27, osid 15781NOTE: cache opening disk 0 of grp 2: DATA_0000 path:/dev/oracleasm/disks/DATA01NOTE: F1X0 found on disk 0 au 2 fcn 0.127835487NOTE: cache opening disk 1 of grp 2: DATA_0001 path:/dev/oracleasm/disks/DATA02NOTE: cache opening disk 2 of grp 2: DATA_0002 path:/dev/oracleasm/disks/DATA03NOTE: cache opening disk 3 of grp 2: DATA_0003 path:/dev/oracleasm/disks/DATA04NOTE: cache opening disk 4 of grp 2: DATA_0004 path:/dev/oracleasm/disks/DATA05NOTE: cache opening disk 5 of grp 2: DATA_0005 path:/dev/oracleasm/disks/DATA06NOTE: cache opening disk 6 of grp 2: DATA_0006 path:/dev/oracleasm/disks/DATA07NOTE: cache opening disk 8 of grp 2: DATA_0008 path:/dev/oracleasm/disks/DATA101NOTE: cache opening disk 9 of grp 2: DATA_0009 path:/dev/oracleasm/disks/DATA201NOTE: cache opening disk 10 of grp 2: DATA_0010 path:/dev/oracleasm/disks/DATA202NOTE: cache opening disk 11 of grp 2: DATA_0011 path:/dev/oracleasm/disks/DATA203NOTE: cache opening disk 12 of grp 2: DATA_0012 path:/dev/oracleasm/disks/DATA204NOTE: cache opening disk 13 of grp 2: DATA_0013 path:/dev/oracleasm/disks/DATA205NOTE: cache opening disk 14 of grp 2: DATA_0014 path:/dev/oracleasm/disks/DATA206NOTE: cache opening disk 15 of grp 2: DATA_0015 path:/dev/oracleasm/disks/DATA207NOTE: cache opening disk 16 of grp 2: DATA_0016 path:/dev/oracleasm/disks/DATA208NOTE: cache mounting (first) external redundancy group 2/0x73BEC220 (DATA)Tue Nov 26 11:48:22 2024* allocate domain 2, invalid = TRUE kjbdomatt send to inst 2Tue Nov 26 11:48:22 2024NOTE: attached to recovery domain 2NOTE: starting recovery of thread=1 ckpt=716.1536 group=2 (DATA)NOTE: starting recovery of thread=2 ckpt=763.6248 group=2 (DATA)NOTE: recovery initiating offline of disk 8 group 2 (*)NOTE: cache initiating offline of disk 8 group DATANOTE: process _user15781_+asm1 (15781) initiating offline of disk 8.3911069996 (DATA_0008) with mask 0x7e in group 2NOTE: initiating PST update: grp = 2, dsk = 8/0xe91e312c, mask = 0x6a, op = clearGMON updating disk modes for group 2 at 84 for pid 27, osid 15781ERROR: Disk 8 cannot be offlined, since diskgroup has external redundancy.ERROR: too many offline disks in PST (grp 2)WARNING: Offline for disk DATA_0008 in mode 0x7f failed.Tue Nov 26 11:48:23 2024NOTE: halting all I/Os to diskgroup 2 (DATA)NOTE: recovery (pass 2) of diskgroup 2 (DATA) caught error ORA-15130Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_ora_15781.trc:ORA-15130: diskgroup "DATA" is being dismountedORA-15066: offlining disk "DATA_0008" in group "DATA" may result in a data lossORA-15131: block 97 of file 8 in diskgroup 2 could not be readORA-15196: invalid ASM block header [kfc.c:7600] [endian_kfbh] [2147483656] [97] [0 != 1] |
由于客户执行了oracleasm deletedisk,根据经验确认该操作是对asm磁盘头的前1M数据进行了清空,而客户这个asm刚好是drop disk触发了rebalance操作的时候干掉磁盘的,基于这样的情况,直接通过修复磁盘1M数据并且mount磁盘组继续使用该磁盘组的概率不大.因此处理建议:
1. 直接恢复出来该磁盘组数据然后打开该库
2. 直接提取客户需要的核心表数据
有过客户有类似操作是asmlib重新创建了磁盘信息恢复:分享oracleasm createdisk重新创建asm disk后数据0丢失恢复案例
删除分区信息之后数据库恢复案例:删除分区 oracle asm disk 恢复
浙公网安备 33010602011771号