[oracle@dbserver1 ~]$ su - grid
sqlplus / as sysasm
Connected.
SQL> alter diskgroup data drop disk data_0001;
Diskgroup altered.
SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;
DISK_NUMBER STATE NAME TOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------
- 1 DROPPING DATA_0001 1953124 1950842
- 0 NORMAL DATA_0000 1953124 1948124
- SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;
DISK_NUMBER STATE NAME TOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------
- 1 DROPPING DATA_0001 1953124 1951434
- 0 NORMAL DATA_0000 1953124 1947532
- SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;
DISK_NUMBER STATE NAME TOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------
- 1 DROPPING DATA_0001 1953124 1952556
- 0 NORMAL DATA_0000 1953124 1946410
- SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;
DISK_NUMBER STATE NAME TOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------
- 1 DROPPING DATA_0001 1953124 1953096
- 0 NORMAL DATA_0000 1953124 1945870
- SQL> select disk_number, state, name, total_mb, free_mb from v$asm_disk where group_number = 4;
DISK_NUMBER STATE NAME TOTAL_MB FREE_MB
- ----------- -------- ------------------------------ ---------- ----------
- 0 NORMAL DATA_0000 1953124 1945854
SQL> select group_number, disk_number, path, name, state, total_mb, free_mb
- from v$asm_disk
- where path = '/dev/asm-disk5';
GROUP_NUMBER DISK_NUMBER PATH NAME STATE TOTAL_MB FREE_MB
- ------------ ----------- --------------- ---------- -------- ---------- ----------
- 0 1 /dev/asm-disk5 NORMAL 0 0
可以看到, 虽然删除操作执行完成, 但是磁盘并没有真正被删掉, ASM 在后台尝试将磁盘上的数据挪到其他可用磁盘中, 这时磁盘的状态为 DROPPING.
当后台数据同步的操作完成, 磁盘的组信息被清除, 磁盘恢复 STATE 状态. 这时这个磁盘就从 ASM 中被彻底删除.
来源: http://www.bubuko.com/infodetail-2716219.html