首页 > 代码库 > ORA-15032、ORA-15071错误处理

ORA-15032、ORA-15071错误处理

遇到一下错误

ERROR at line 1:

ORA-15032: not all alterations performed

ORA-15071: ASM disk "NOCR_0002" is already being dropped

?

背景描述

因为之前做了alter diskgroup NOCR drop disk NOCR_0002操作,但是因为这个NOCR_0002磁盘存在存储1上,在drop操作没有完成的时候直接将存储掉电,在后面将存储都启动后,这个磁盘的状态一直保持droping。

第一次尝试:

????将NOCR_0002这个磁盘dd

????????dd if=/dev/zero of=/dev/raw/raw9 count=1024 bs=1M;

????dd完成之后,重启了集群

????????root:crscttl stop cluster –all -à crsctl start cluster –all

????重启之后,NOCR_0002的状态变为:

????变成了两条记录

????到此时,我认为删除失败了。这种方法,只能将/dev/raw/raw9中的磁盘头信息删除,然是在Udev服务的作用下,这个ASM磁盘组依然会现实在v$asm_disk列表中;但是在CRS注册表中,磁盘名称NOCR_0002以及它的故障组信息NOCR_0003信息并没有删除掉。

?

第二种方法

????alter diskgroup NOCR undrop disks;

????取消磁盘的删除操作,虽然这个时候 NOCR_0002这个磁盘和原本有对应关系的/dev/raw/raw9是两条记录,但是这个操作依然是完成了。

SQL> alter diskgroup NOCR undrop disks;

Diskgroup altered.

????此时磁盘的状态如下:

????

然后执行我们熟悉的alter diskgroup NOCR drop disk NOCR_0002操作:

SQL> alter diskgroup NOCR drop disk NOCR_0002;

alter diskgroup NOCR drop disk NOCR_0002

*

ERROR at line 1:

ORA-15032: not all alterations performed

ORA-15084: ASM disk "NOCR_0002" is offline and cannot be dropped.

报错,使用force选项

SQL> alter diskgroup NOCR drop disk NOCR_0002 force;

Diskgroup altered.

?

至此,才将磁盘删除掉

ORA-15032、ORA-15071错误处理