Email: service@parnassusdata.com 7 x 24 online support!

    You are here

    • You are here:
    • Home > Blogs > PDSERVICE's blog > Oracle 无法Mount 或Drop 一个磁盘组,生成错误Ora-15032和 Ora-15063 ORA-15032: 未执行全部变更操作 ORA-15063: ASM 发现磁盘组 "" 的磁盘数目不足

Oracle 无法Mount 或Drop 一个磁盘组,生成错误Ora-15032和 Ora-15063 ORA-15032: 未执行全部变更操作 ORA-15063: ASM 发现磁盘组 "" 的磁盘数目不足

Oracle 无法Mount 或Drop 一个磁盘组,生成错误Ora-15032和 Ora-15063 ORA-15032: 未执行全部变更操作 ORA-15063: ASM 发现磁盘组 "" 的磁盘数目不足

如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638 QQ号:47079569 邮箱:service@parnassusdata.com

 

 

ORA-15063: ASM 发现磁盘组 "" 的磁盘数目不足

oerr ora 15063
 
15063, 00000, "ASM discovered an insufficient number of disks for diskgroup \"%s\""
// *Cause:  ASM was unable to find a sufficient number of disks belonging to the
//          diskgroup to continue the operation.
// *Action: Check that the disks in the diskgroup are present and functioning, 
//          that the owner of the ORACLE binary has read/write permission to 
//          the disks, and that the ASM_DISKSTRING initialization parameter 
//          has been set correctly.  Verify that ASM discovers the appropriate 
//          disks by querying V$ASM_DISK from the ASM instance
 
ORA-15032: 未执行全部变更操作
 
 
oerr ora 15032
15032, 00000, "not all alterations performed"
// *Cause:  At least one ALTER DISKGROUP action failed.
// *Action: Check the other messages issued along with this summary error.

 

 

适用于:

Oracle Database – Enterprise Edition – 版本10.1.0.2 10.2.0.1 [Release 10.1 to 10.2]

本文信息适用于任何平台。
***11-Jul-2014检查相关性***

症状

无法使磁盘组被mountdrop

SQL> ALTER DISKGROUP CIF_RECO_01 mount;
ALTER DISKGROUP CIF_RECO_01 mount
*
在行1的错误:
ORA-15032: not all alterations performed
ORA-15063: diskgroup “CIF_RECO_01” lacks quorum of 1 PST disks; 0 found

 

主要问题是需要使这个磁盘组被drop以在其他磁盘组使用磁盘。

原因

Drop一个磁盘组需要它被mount。如果磁盘组无法被mount,则你需要覆盖磁盘的第一个块,使其不像是你想要drop的磁盘组中的一个磁盘。有几种方法来执行。这些都很危险,因为如果你对磁盘输入了错误的设备名称,就会摧毁一个运行中的磁盘组。

1. 你能使用‘dd’ Unix命令将磁盘头上的zero块写入block 0
2. 你只要使用FORCE 选项将磁盘添加到新的磁盘组。
3. 你能以FORCE选项使用旧磁盘组中 的所有磁盘来创建新磁盘组。然后,新磁盘组能被 mountdrop。该方法相较第二个方法的唯一优势是FORCE add都一次性完成,从而添加新磁盘组能在一段时间后完成,而无需使用FORCE的惯例。

解决方案

以下步骤是一种方法。

1.  创建一个新的磁盘组,FORCE’ing 磁盘到新的磁盘组。一旦磁盘被 force到新磁盘组,原始的磁盘组(这里是CIF_RECO_01) 不在存在。

SQL> create diskgroup TEST_DG external redundancy
disk ‘/dev/raw/raw1’ FORCE, ‘/dev/raw/raw3’ FORCE;

之前的方法是破坏性的操作,因为‘FORCE’ 选项会清理所有之前的ASM 元数据并使用有关新磁盘组的新的ASM元数据初始化磁盘,因此位于相关磁盘的所有之前的数据结构(在 CREATE DISKGROUP语句中指定)会被清除。出于这个原因,如果你不能确定列出的磁盘,则请用Oracle Support 打开一个Service Request (SR) ,我们乐意帮助你完成任务。

2. 验证mounted

SQL> select name, state from v$asm_diskgroup;

 

3. Drop 新的磁盘组来释放磁盘空间。

SQL> drop diskgroup TEST_DG;

 

4. 验证磁盘头

 

SQL> select name,path,header_status from v$asm_disk;

 

磁盘的header_status应为FORMER,表明磁盘曾经是磁盘组的一部分,且可能使用ALTER DISKGROUP语句被添加到新的磁盘组

5. 然后添加磁盘到 CIF_DATA_02,即预期的磁盘组。

SQL> alter diskgroup CIF_DATA_02 add disk ‘/dev/raw/raw1’, ‘/dev/raw/raw3’;