ORA-15041: diskgroup space exhausted

3178 ワード

今日、バックアップを行うときにディスクが切れたというエラーが発生しました.具体的には、次のようになります.
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 06/12/2014 19:23:43
ORA-19504: failed to create file "+ASM"
ORA-17502: ksfdcre:4 Failed to create file +ASM
ORA-15041: diskgroup space exhausted

ASMのalertログを表示すると、次の警告が表示されます.
WARNING: allocation failure on disk ASM_0000 for file 284 xnum 386
WARNING: allocation failure on disk ASM_0001 for file 284 xnum 386
WARNING: allocation failure on disk ASM_0000 for file 284 xnum 386
WARNING: allocation failure on disk ASM_0001 for file 284 xnum 386

ASMのalertログの位置、私の機械の上の位置(人によって異なります):
[oracle@kel bdump]$ vim  alert_+ASM.log 
[oracle@kel bdump]$ pwd
/home/oracle/admin/+ASM/bdump

本来は最も基本的なエラーであり、次のようにディスク領域のサイズを表示します.
SQL> select name,state,total_mb,free_mb from v$asm_diskgroup;

NAME	   STATE	TOTAL_MB    FREE_MB
---------- ---------- ---------- ----------
ASM	   MOUNTED	    4094	774
KEL	   MOUNTED	    4094       2500

以上から分かるように、ASMディスクグループの中で、ASMのディスクグループは2つのグループがあり、1つのグループはASMで、残りの空間は774 Mで、もう1つのグループはKELで、残りのディスク空間は1つ以上Gで、今回のバックアップのデータは約1つのG内で、ディスクグループASMの空間はきっと足りないが、ディスクグループKELの空間は十分で、それによって再びバックアップを行う:
RMAN> backup as copy database format '+ASM/KEL';

Starting backup at 12-JUN-14
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile copy
input datafile fno=00001 name=/home/oracle/oradata/ipap/system01.dbf
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 06/12/2014 19:37:32
ORA-19504: failed to create file "+ASM/kel"
ORA-17502: ksfdcre:4 Failed to create file +ASM/kel
ORA-15041: diskgroup space exhausted

このバックアップ文の本意は、バックアップデータをインスタンス名ASMのasmインスタンスに配置し、KELディスクグループに配置することであり、エラーを報告することは依然としてディスク領域が枯渇しているエラーであり、ここでも最も基本的なエラーを犯している.ASMディスクグループを選択する際に、インスタンス名を付ける必要がなく、直接ディスクグループの名前を使用すればよい.ここでこのエラーを犯すことができるのは、主にインスタンス名ASMである.一方、あるグループの名前はASMであるため、深く研究していない.ディスクグループを選択するときは、「+ディスクグループ名」を直接使用すればよい.
RMAN> backup as copy database format '+KEL';

Starting backup at 12-JUN-14
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile copy
input datafile fno=00001 name=/home/oracle/oradata/ipap/system01.dbf
output filename=+KEL/ipap/datafile/system.260.850074633 tag=TAG20140612T195029 recid=6 stamp=850074717
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:01:35
channel ORA_DISK_1: starting datafile copy

従って、ASMディスクグループを使用する場合、ASMディスクグループを指定する場合、+ディスクグループ名をそのまま使用すればよく、他のものは不要となる.
前述のエラーでは、どの文を使用しても、バックアップファイルをASMディスクグループに配置しますが、ASMディスクグループのスペースが不足しているため、ディスク領域が不足しているエラーが発生します.