9876
ASM中删除文件 ORA-15032 ORA-15177_document


文档 ID


ASM中删除文件 ORA-15032 ORA-15177_applies_02
ASM中删除文件 ORA-15032 ORA-15177_generated_03ORA-15032 ORA-15177 Deletion of System generated ASM files (文档 ID 459161.1)ASM中删除文件 ORA-15032 ORA-15177_files_04转到底部ASM中删除文件 ORA-15032 ORA-15177_Oracle_05

修改时间:2013-2-15ASM中删除文件 ORA-15032 ORA-15177_applies_06类型:PROBLEMASM中删除文件 ORA-15032 ORA-15177_Oracle_07
ASM中删除文件 ORA-15032 ORA-15177_Oracle_08
ASM中删除文件 ORA-15032 ORA-15177_applies_09
ASM中删除文件 ORA-15032 ORA-15177_document_10ASM中删除文件 ORA-15032 ORA-15177_document_11ASM中删除文件 ORA-15032 ORA-15177_Oracle_12ASM中删除文件 ORA-15032 ORA-15177_files_13ASM中删除文件 ORA-15032 ORA-15177_files_14ASM中删除文件 ORA-15032 ORA-15177_document_15
ASM中删除文件 ORA-15032 ORA-15177_Oracle_16

In this Document


Symptoms

Cause

Solution


Applies to:

Oracle Database - Enterprise Edition - Version 10.2.0.3 and later
Information in this document applies to any platform.
***Checked for relevance on 27-Feb-2011***


Symptoms

SQL> alter diskgroup TEMP_GROUP drop alias
'+TEMP_GROUP/PDWH/DUMPSET/SYSTEMSYS_EXPORT_SCHEMA_01_1309498_1.259.6324066';

alter diskgroup TEMP_GROUP drop alias
'+TEMP_GROUP/PDWH/DUMPSET/SYSTEMSYS_EXPORT_SCHEMA_01_1309498_1.259.6324066'
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15177: cannot operate on system aliases

Cause

When the file was dropped  from ASM/sqlplus, then it should also remove the System ASM file.  

During the file drop through asmcmd , it is necessary to provide the untruncated file name.Since the NAME column in the fixed views like v$asm_alias is VARCHAR2(48), the fix would be to get the untruncated name and then drop the file explicitly.

No query currently available to get the Actual file name and this is because of the way rows are present in V$ASM_ALIAS . This has to be achieved manually , as below .

Solution

Alternatively, use the below " +diskgroup.fnum.incarn " to drop the file like:

SQL > ALTER DISKGROUP <disk_group_name> DROP FILE '<+diskgroup.fnum.incarn>';

example :

SQL > ALTER DISKGROUP TEMP_GROUP  DROP FILE '+TEMP_GROUP.259.632406635';

The "+diskgroup.fnum.incarn " information , can be retrieved from the below script output , ASM_FILENAME ::

SQL> select f.file_number, a.name , ('+' || g.name||'.'||f.file_number||'.'||f.incarnation)
asm_filename,
2 f.type from v$asm_diskgroup g,
3 v$asm_file f,
4 v$asm_alias a
5 where g.name = '<diskgrp_name>'
6 and g.group_number = f.group_number
7 and g.group_number = a.group_number
8 and f.file_number = a.file_number
9 order by f.file_number;