版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Martin201609/article/details/52796964
ORA-15041: diskgroup “DATAVG” space exhausted ASM空间假装耗尽不足,resize数据文件和增加数据文件失败
查看asm磁盘组的使用
su - grid
asmcmd
lsdg
ASMCMD> lsdg
State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED NORMAL N 512 4096 1048576 2048000 108468 409600 -150566 0 N DATAVG/
MOUNTED EXTERN N 512 4096 1048576 204800 200536 0 200536 0 N RECVG/
MOUNTED NORMAL N 512 4096 1048576 12288 11362 4096 3633 0 Y SYSVG/
Free_MB的大小还剩余100GB,但是resize数据文件的时候,提示磁盘组空间不足了
增加数据文件报错:
SQL> ALTER DATABASE DATAFILE '+DATAVG/xxxx/datafile/xxxdata22.dbf' RESIZE 25000M;
Database altered.
SQL> ALTER DATABASE DATAFILE '+DATAVG/xxxx/datafile/xxxdata22.dbf' RESIZE 30000M;
ALTER DATABASE DATAFILE '+DATAVG/xxxx/datafile/xxxdata22.dbf' RESIZE 30000M
*
ERROR at line 1:
ORA-01237: cannot extend datafile 33
ORA-01110: data file 33: '+DATAVG/xxxx/datafile/xxxdata22.dbf'
ORA-17505: ksfdrsz:1 Failed to resize file to size 3840000 blocks
ORA-15041: diskgroup "DATAVG" space exhausted
检查该ASM卷组中每个盘的大小:
select path,total_mb,free_mb from v$asm_disk_stat t where t.group_nubmer = 1;
PATH TOTAL_MB FREE_MB
12 /dev/rhdisk9 204800 1169
13 /dev/rhdisk16 204800 1174
4 /dev/rhdisk14 204800 2787
14 /dev/rhdisk17 204800 2792
8 /dev/rhdisk4 4096 3786
6 /dev/rhdisk2 4096 3788
9 /dev/rhdisk5 4096 3788
10 /dev/rhdisk6 204800 15682
5 /dev/rhdisk15 204800 15691
3 /dev/rhdisk13 204800 17280
7 /dev/rhdisk3 204800 17288
1 /dev/rhdisk10 204800 17298
2 /dev/rhdisk12 204800 17305
11 /dev/rhdisk8 204800 172622
发现并没有在进行reblance,所以导致该ASM卷组空间假装耗尽,可以看到一些disk的并没有rebalance正常。
查看rebalance参数
sqlplus / as sysasm
show parameter limit
SQL> show parameter limit
NAME TYPE VALUE
------------------------------------ ---------------------- ------------------------------
asm_power_limit integer 6
grid用户下键入命令,将磁盘组DATAVG进行重新rebalance处理
alter diskgroup DATAVG rebalance power 11;
select * from v$asm_operation
GROUP_NUMBER OPERATION STATE POWER ACTUAL SOFAR EST_WORK EST_RATE EST_MINUTES ERROR_CODE
------------ ---------- -------- ---------- ---------- ---------- ---------- ---------- ----------- ----------------------------------------------------------------------------------------
1 REBAL RUN 11 11 3656 112360 4236 25
select path,total_mb,free_mb from v$asm_disk_stat;
当v$asm_operation完成之后,则重新查看磁盘组使用情况,并再次resize数据文件,则成功
PATH TOTAL_MB FREE_MB
8 /dev/rhdisk4 4096 3786
6 /dev/rhdisk2 4096 3788
9 /dev/rhdisk5 4096 3788
13 /dev/rhdisk16 204800 10841
12 /dev/rhdisk9 204800 10843
1 /dev/rhdisk10 204800 10845
3 /dev/rhdisk13 204800 10845
2 /dev/rhdisk12 204800 10847
4 /dev/rhdisk14 204800 10847
14 /dev/rhdisk17 204800 10848
10 /dev/rhdisk6 204800 10849
5 /dev/rhdisk15 204800 10850
7 /dev/rhdisk3 204800 10853
11 /dev/rhdisk8 204800 200536